Pages

  • Beranda

Muslim Online

  • Home
  • Menu1
    • Submenu1
    • Submenu2
    • Submenu3
  • Menu2
    • Submenu1
    • Submenu2
    • Submenu3
  • Menu3
  • Menu4
Home » Uncategories » Building Studio in Public: How Open Source Collaboration Enhances Studio

Building Studio in Public: How Open Source Collaboration Enhances Studio

— Kamis, 03 Oktober 2024 — Add Comment

It's now time for Part 3 of our "Building Studio in Public" series! In today's post, we'll explore how the Studio app connects with other open source projects, with a focus on its key relationship with WordPress Playground. We'll also dive into …
Read on blog or Reader
Site logo image WordPress.com News Read on blog or Reader

Building Studio in Public: How Open Source Collaboration Enhances Studio

By Carlos G. Prim on October 3, 2024

It's now time for Part 3 of our "Building Studio in Public" series! In today's post, we'll explore how the Studio app connects with other open source projects, with a focus on its key relationship with WordPress Playground. We'll also dive into the benefits and challenges of this symbiotic relationship, showing how both projects mutually benefit from improvements and bug fixes.

If you're following the series, be sure to check out past posts:

  • Using WordPress Components and Tailwind CSS in our Local Development App.
  • Maintaining High Performance in Our Local Development App for Enhanced UX

As a reminder, Studio is our free and open source local WordPress development app.

Download Studio for free

How Studio connects to other open source projects

Studio relies on various open source projects, with the primary one being WordPress Playground which provides a local WordPress server, handling everything from running PHP code to serving static files and managing a database. This allows developers to test WordPress sites, plugins, and themes in a local, sandboxed environment.

WordPress Playground utilizes Emscripten to compile the PHP interpreter to WebAssembly, enabling PHP to run in the browser and other platforms—a significant leap for WordPress development.

a screenshot of WordPress Playground with a site running Twenty Twenty Four on the right

By way of WordPress Playground, Studio also makes use of other open source tools like the SQLite integration plugin.

Studio itself is open source, which means the codebase is available for review, contribution, and forking by the community. This openness fosters collaboration, encourages innovation, and enables rapid identification and resolution of issues.

Because of the open source nature of Studio and the projects it uses like WordPress Playground, we are not blocked by missing or undesired behavior of our libraries but can instead help uncover issues or opportunities for enhancement in these projects and contribute the necessary fixes and improvements. Instead of building workarounds, we can directly enhance Studio's performance and capabilities by submitting fixes to the actual problems. 

This creates a virtuous cycle of improvement, showcasing how open source collaboration drives innovation and helps solve complex challenges.

Challenges we discovered working with WordPress Playground

WordPress Playground is powerful, but since it makes WordPress run in an unusual environment–the browser instead of a server–some things work differently than developers expect. While using it to power Studio allows us to achieve all the good things, like a fast setup, we also had to overcome some challenges:

  1. Cross-platform compatibility: Ensuring that WordPress Playground runs smoothly on different operating systems (Windows, macOS, Linux) and across browsers requires extensive testing and fine-tuning.
  2. Performance: Managing multiple resources (PHP interpreter, WordPress site, database, and file system) while running multiple sites in Studio can strain performance. You can learn more about how we maintain high performance in Studio here.
  1. Plugin and theme compatibility: Although WordPress Playground creates a full environment for running sites, some plugins and themes rely on extensions that are not included in WordPress Playground by default. Adjustments are often necessary to accommodate support for the different plugins and themes.
  2. Database handling: WordPress Playground uses an SQLite database instead of MySQL, fundamentally altering how WordPress operates. This shift requires adaptations for database queries and compatibility with plugins and themes.

These complexities sometimes lead to incompatibilities, bugs, or performance issues. However, we believe the benefits of WordPress Playground far outweigh the challenges, and we are committed to addressing them by contributing to the Playground project. Thus not only Studio works better, but everyone who uses Playground has a better experience.

In turn, Studio also benefits from contributions from other Playground users.

Our recent contributions to WordPress Playground and other open source projects

As part of our contributions to the Studio app, we recently focused on improving the compatibility of plugins, themes, and workflows in sites. The following are some of the fixes we made that contributed to the projects.

MySQL database compatibility

With a pull request, we helped improve the compatibility of sites connecting to MySQL databases, making Studio more flexible in handling various site configurations and expanding its capability to support more diverse WordPress setups.

Symlink support

We submitted two contributions (PR 1, PR 2) to add crucial support for handling symlinks in sites, greatly improving file system compatibility and flexibility. This enhancement significantly improves the development workflow, enabling developers to maintain cleaner project structures and more efficiently manage their themes and plugins across multiple projects. It also facilitates easier version control and collaboration by allowing links to external repositories without duplicating files.

Windows media upload fix

A fix resolved critical issues with uploading media on sites when using the Windows version of the Studio app, ensuring a smoother experience for Windows users. This contribution addressed a significant functionality gap, ensuring that Studio provides a consistent and reliable media management experience across all supported operating systems.

WordPress core and extension upgrades

Another contribution fixed the process of upgrading versions of WordPress, plugins, and themes. This improvement streamlined the update process within Studio, allowing developers to maintain their WordPress installations and associated extensions easily.

WooCommerce compatibility

This pull request significantly improved compatibility with the WooCommerce plugin, expanding Studio's utility for e-commerce development. This contribution addressed specific database queries and operations that were incompatible with the SQLite database used in sites created with Studio. The SQLite integration plugin involves different complexities to allow seamless integration with the WordPress ecosystem, and this contribution addresses one of the main pain points of using WooCommerce in local WordPress environments.

cURL extension compatibility

We contributed the ability to enable the cURL extension on PHP used with Playground which turned out to be a requirement by a significant number of plugins for external API calls or remote data fetching. This broadens the range of plugins that can be used effectively within Studio and WordPress Playground.

File creation compatibility

A fix improved compatibility with plugins that create files using umask to set file permissions, enhancing the file system operations. This was crucial for plugins that generate caches, create custom CSS or JavaScript files, or manage uploads in non-standard ways. By resolving these file operation issues, we ensured that a broader range of plugins could function correctly within Studio, providing a more accurate representation of how sites would behave in a production environment.

All the above examples demonstrate how collaborative contributions help Studio evolve, making it more compatible with the vast array of plugins and themes in the WordPress ecosystem.

a cursor clicking a blue Add demo site button under the Share tab on Studio by WordPress.com

How to contribute

If this post has inspired you to contribute to open source projects (we're big fans), here's how you can get involved with some of our favorite open source projects:

  • Contribute to the Studio app project
  • Contribute to the WordPress Playground project
  • Contribute to the WordPress project

Together we can build incredible tools for the community! 🙂

Ready to build?

If this information has piqued your interest, or if you're developing WordPress sites, start leveraging the power of Studio today. It's free, it's open source, and it seamlessly integrates into your development workflow.

Download Studio for free

After downloading Studio, connect it to your WordPress.com account (free or paid) to unlock features like Demo Sites.

Comment
Like
You can also reply to this email to leave a comment.

WordPress.com News © 2024.
Manage your email settings or unsubscribe.

WordPress.com and Jetpack Logos

Get the Jetpack app

Subscribe, bookmark, and get real‑time notifications - all from one app!

Download Jetpack on Google Play Download Jetpack from the App Store
WordPress.com Logo and Wordmark title=

Automattic, Inc.
60 29th St. #343, San Francisco, CA 94110

Tweet

0 Response to "Building Studio in Public: How Open Source Collaboration Enhances Studio"

← Posting Lebih Baru Posting Lama → Beranda
Langganan: Posting Komentar (Atom)

Arsip Blog

  • Agustus 2025 (22)
  • Juli 2025 (61)
  • Juni 2025 (74)
  • Mei 2025 (63)
  • April 2025 (77)
  • Maret 2025 (146)
  • Februari 2025 (132)
  • Januari 2025 (134)
  • Desember 2024 (177)
  • November 2024 (166)
  • Oktober 2024 (127)
  • September 2024 (141)
  • Agustus 2024 (127)
  • Juli 2024 (167)
  • Juni 2024 (132)
  • Mei 2024 (108)
  • April 2024 (102)
  • Maret 2024 (105)
  • Februari 2024 (85)
  • Januari 2024 (64)
  • Desember 2023 (74)
  • November 2023 (91)
  • Oktober 2023 (49)
  • September 2023 (47)
  • Agustus 2023 (63)
  • Juli 2023 (45)
  • Juni 2023 (47)
  • Mei 2023 (49)
  • April 2023 (42)
  • Maret 2023 (53)
  • Februari 2023 (38)
  • Januari 2023 (39)
  • Desember 2022 (47)
  • November 2022 (15)
  • Oktober 2022 (9)
  • September 2022 (10)
  • Agustus 2022 (9)
  • Juli 2022 (9)
  • Juni 2022 (8)
  • Mei 2022 (10)
  • April 2022 (13)
  • Maret 2022 (13)
  • Februari 2022 (16)
  • Januari 2022 (15)
  • Desember 2021 (18)
  • November 2021 (16)
  • Oktober 2021 (12)
  • September 2021 (10)
  • Agustus 2021 (12)
  • Juli 2021 (18)
  • Juni 2021 (11)
  • Mei 2021 (11)
  • April 2021 (13)
  • Maret 2021 (12)
  • Februari 2021 (12)
  • Januari 2021 (13)
  • Desember 2020 (10)
  • November 2020 (14)
  • Oktober 2020 (17)
  • September 2020 (10)
  • Agustus 2020 (14)
  • Juli 2020 (17)
  • Juni 2020 (21)
  • Mei 2020 (18)
  • April 2020 (11)
  • Maret 2020 (16)
  • Februari 2020 (8)
  • Januari 2020 (9)
  • Desember 2019 (13)
  • November 2019 (12)
  • Oktober 2019 (9)
  • September 2019 (11)
  • Agustus 2019 (26)
  • Juli 2019 (32)
  • Juni 2019 (32)
  • Mei 2019 (30)
  • April 2019 (33)
  • Maret 2019 (20)
  • Februari 2019 (12)
  • Januari 2019 (16)
  • Desember 2018 (14)
  • November 2018 (25)
  • Oktober 2018 (12)
  • September 2018 (14)
  • Agustus 2018 (14)
  • Juli 2018 (12)
  • Juni 2018 (27)
  • Mei 2018 (48)
  • April 2018 (33)
  • Maret 2018 (45)
  • Februari 2018 (73)
  • Januari 2018 (337)
  • Desember 2017 (338)
  • November 2017 (251)
  • Oktober 2017 (381)
  • September 2017 (31)

Label

  • Berita
  • Kajian Islam
  • Politik
Diberdayakan oleh Blogger.
  • How to Start a Successful Blog: A 12-Step Guide for Beginners
    So, you want to start a blog, huh? First of all, that's a pretty dope idea. ...
  • Hot Off the Press: New WordPress.com Themes for January 2025
    New Year, new themes! We've been hard at work developing new themes to help ...
  • Hey - junk removal inquiry
    Hey,   I hope you're having a good Wednesday morning.  I wanted to reach out as we help junk removal companies predictably acquire new c...
↑
Copyright © 2017 - Muslim Online - All rights reserved Powered by Blogger