'WordPress Playground block demo!','post_content' => '', 'post_status' => 'publish', 'post_type' => 'post',]);"
+ }
+ ]
+}} />
+
+You can share your own Blueprint examples in [this dedicated wiki](https://github.com/WordPress/wordpress-playground/wiki/Blueprint-examples).
+
+## Load an older WordPress version
+
+Playground only ships with a few recent WordPress releases. If you need to use an older version, this Blueprint can help you: change the version number in `"url": "https://playground.wordpress.net/plugin-proxy.php?url=https://wordpress.org/wordpress-5.9.9.zip"` from `5.9.9` to the release you want to load.
+
+**Note:** the oldest supported WordPress version is `5.9.9`, following the SQLite integration plugin.
+
+
+
+## Run WordPress from trunk or a specific commit.
+
+WordPress Playground can run `trunk` (the latest commit), the HEAD of a specific branch or a specific commit from the [WordPress/WordPress](https://github.com/WordPress/WordPress) GitHub repository.
+
+You can specify the reference in `"url": "https://playground.wordpress.net/plugin-proxy.php?build-ref=trunk"`.
+
+To specify the latest commit of a particular branch, you can change the reference to the branch version number, eg `6.6`. To run a specific commit, you can use the commit hash from [WordPress/WordPress](https://github.com/WordPress/WordPress), eg `7d7a52367dee9925337e7d901886c2e9b21f70b6`.
+
+**Note:** the oldest supported WordPress version is `5.9.9`, following the SQLite integration plugin.
+
+
+
+## Using Blueprint Bundles
+
+Here's an example of a Blueprint that uses bundled resources from a Blueprint bundle:
+
+```json
+{
+ "landingPage": "/",
+ "preferredVersions": {
+ "php": "8.0",
+ "wp": "latest"
+ },
+ "steps": [
+ {
+ "step": "installTheme",
+ "themeData": {
+ "resource": "bundled",
+ "path": "/my-theme.zip"
+ },
+ "activate": true
+ },
+ {
+ "step": "installPlugin",
+ "pluginData": {
+ "resource": "bundled",
+ "path": "/my-plugin.zip"
+ },
+ "activate": true
+ },
+ {
+ "step": "writeFile",
+ "path": "/wordpress/custom-page.html",
+ "data": {
+ "resource": "bundled",
+ "path": "/assets/custom-page.html"
+ }
+ }
+ ]
+}
+```
+
+This Blueprint bundle would be zip file containing the following files:
+
+- `/blueprint.json` - The blueprint declaration outlined above
+- `/my-theme.zip` - A theme package
+- `/my-plugin.zip` - A plugin package
+- `/assets/custom-page.html` - A custom HTML file
+
+You can use this Blueprint bundle by:
+
+1. Creating a ZIP file with these files and the blueprint.json
+2. Hosting the ZIP file on a server
+3. Loading it with `?blueprint-url=https://example.com/my-blueprint-bundle.zip`
+
+For more information on Blueprint bundles, see the [Blueprint Bundles](/blueprints/bundles) documentation.
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/09-troubleshoot-and-debug-blueprints.md b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/09-troubleshoot-and-debug-blueprints.md
new file mode 100644
index 0000000000..55557f07b6
--- /dev/null
+++ b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/09-troubleshoot-and-debug-blueprints.md
@@ -0,0 +1,77 @@
+---
+title: Troubleshoot and debug
+slug: /blueprints/troubleshoot-and-debug
+---
+
+# Troubleshoot and debug Blueprints
+
+When you build Blueprints, you might run into issues. Here are tips and tools to help you debug them:
+
+## Review Common gotchas
+
+- Require `wp-load`: to run a WordPress PHP function using the `runPHP` step, you’d need to require [wp-load.php](https://github.com/WordPress/WordPress/blob/master/wp-load.php). So, the value of the `code` key should start with `" JavaScript API > Debugging and testing](/developers/apis/javascript-api/#debugging-and-testing)). Some examples:
+
+```
+> await playground.isDir("/wordpress/wp-content/plugins")
+true
+> await playground.listFiles("/wordpress/wp-content/plugins")
+(3) ['hello.php', 'index.php', 'WordPress-Importer-master']
+```
+
+Full list of methods we can use is available [here](/api/client/interface/PlaygroundClient)
+
+:::
+
+## Check for errors in the browser console
+
+If your Blueprint isn’t running as expected, open the browser developer tools to see if there are any errors.
+
+To open the developer tools in Chrome, Firefox, Safari\*, and Edge: press `Ctrl + Shift + I` on Windows/Linux or `Cmd + Option + I` on macOS.
+
+:::caution
+
+If you haven't yet, enable the Develop menu: go to **Safari > Settings... > Advanced** and check **Show features for web developers**.
+
+:::
+
+The developer tools window allows you to inspect network requests, view console logs, debug JavaScript, and examine the DOM and CSS styles applied to your webpage. This is crucial for diagnosing and fixing issues with Blueprints.
+
+## Log your own error messages
+
+You can `error_log` your own error messages through [`runPHP` step](/blueprints/steps#RunPHPStep) (see [blueprint example](https://github.com/wordpress/blueprints/blob/trunk/blueprints/reset-data-and-import-content/blueprint.json) and [live demo](https://playground.wordpress.net/?blueprint-url=https://raw.githubusercontent.com/wordpress/blueprints/trunk/blueprints/reset-data-and-import-content/blueprint.json)) and check them from the ["View Logs" option](/web-instance#playground-options-menu) or from the browser's console.
+
+
+
+:::info
+When you download your Playground instance as a `zip` through the ["Download as zip" option](/web-instance#playground-options-menu) you'll also download the `debug.log` file containing all the logs from your Playground instance.
+:::
+
+## Ask for help
+
+The community is here to help! If you have questions or comments, [open a new issue](https://github.com/adamziel/blueprints/issues) in this repository. Remember to include the following details:
+
+- The Blueprint you’re trying to run.
+- The error message you’re seeing, if any.
+- The full output from the browser developer tools.
+- Any other relevant information that might help us understand the issue: OS, browser version, etc.
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/installed-adventurer-theme.png b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/installed-adventurer-theme.png
new file mode 100644
index 0000000000..8fdf9324bf
Binary files /dev/null and b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/installed-adventurer-theme.png differ
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/installed-custom-plugin.png b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/installed-custom-plugin.png
new file mode 100644
index 0000000000..af82d50611
Binary files /dev/null and b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/installed-custom-plugin.png differ
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/log-errors.png b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/log-errors.png
new file mode 100644
index 0000000000..4e97a434b9
Binary files /dev/null and b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/log-errors.png differ
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/schema-autocompletion.png b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/schema-autocompletion.png
new file mode 100644
index 0000000000..b1337c3746
Binary files /dev/null and b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/_assets/schema-autocompletion.png differ
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/intro.md b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/intro.md
new file mode 100644
index 0000000000..613094207e
--- /dev/null
+++ b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/intro.md
@@ -0,0 +1,44 @@
+---
+title: Introduction
+slug: /blueprints
+id: introduction
+---
+
+import BlueprintExample from '@site/src/components/Blueprints/BlueprintExample.mdx';
+
+# Blueprints Docs
+
+:::tip
+Check the [Blueprints Gallery](https://github.com/WordPress/blueprints/blob/trunk/GALLERY.md) to explore real-world code examples of using WordPress Playground to launch a WordPress site with a variety of setups.
+:::
+
+Hi! Welcome to WordPress Playground Blueprints documentation.
+
+Blueprints are JSON files for setting up your very own WordPress Playground instance. This subsite (Blueprints Docs) is where you will find all the information you need to use Blueprints.
+
+The WordPress Playground documentation is distributed across four separate hubs (subsites):
+
+- [**Documentation**](/) – Introduction to WP Playground, starter guides and your entry point to WP Playground Docs.
+- 👉 [**Blueprints**](/blueprints) (you're here) – Blueprints are JSON files for setting up your WordPress Playground instance. Learn about their possibilities from this Blueprints docs hub.
+- [**Developers**](/developers) – WordPress Playground was created as a programmable tool. Discover all the things you can do with it from your code in the Developers docs hub.
+- [**API Reference**](/api) – All the APIs exposed by WordPress Playground
+
+## Navigating the Blueprints documentation hub
+
+This docs hub is focused on Blueprints info and is divided into the following major sections:
+
+- [Getting started with Blueprints](/blueprints/getting-started): Quick Start Guide to setting up a WordPress Playground instance using Blueprint JSON files.
+
+- [Tutorial - Blueprints 101](/blueprints/tutorial) - Blueprints API crash course. The tutorial will guide you through the complete process of creating a blueprint that loads a theme and plugin (among other things).
+
+- [Blueprint data Format](/blueprints/data-format): Blueprint JSON files define your Playground instance with various properties. This section highlights the key properties you need to know.
+
+- [Using Blueprints](/blueprints/using-blueprints): Learn in this section different ways to use Blueprints.
+
+- [Steps](/blueprints/steps): API Reference of all the available steps that can be set in a blueprint to run tasks such as login, plugin/theme activation, file operations, and more.
+
+- [Blueprint Bundles](/blueprints/bundles): Learn how to create and use Blueprint bundles - self-contained packages that include a Blueprint and all its resources.
+
+- [Examples](/blueprints/examples): Compilation of Blueprint examples for various WordPress Playground setups, including installing themes/plugins, running PHP code, enabling features, and loading specific WordPress versions.
+
+- [Troubleshoot and debug Blueprints](/blueprints/troubleshoot-and-debug): Tips and tools for troubleshooting and debugging Blueprints.
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/01-what-are-blueprints-what-you-can-do-with-them.md b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/01-what-are-blueprints-what-you-can-do-with-them.md
new file mode 100644
index 0000000000..212cbab1d1
--- /dev/null
+++ b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/01-what-are-blueprints-what-you-can-do-with-them.md
@@ -0,0 +1,66 @@
+---
+title: What are Blueprints?
+slug: /blueprints/tutorial/what-are-blueprints-what-you-can-do-with-them
+description: Getting started with Blueprints
+---
+
+# What are Blueprints, and what can you do with them?
+
+With WordPress Playground you can create a whole website, including plugins, themes, content (posts, pages, taxonomy, and comments), settings (site name, users, permalinks, and more), etc. They allow you to generate a WooCommerce store complete with products, a magazine populated with articles, a corporate blog with multiple users, and more.
+
+Blueprints are `JSON` files that you can use to configure Playground instances.
+
+Blueprints support advanced use cases, like file system and database manipulation, and give you fine-grained control over the instance you create. The WordPress Test Team has been using Playground in [the 6.5 beta release cycle](https://wordpress.org/news/2024/03/wordpress-6-5-release-candidate-2/), creating a Blueprint that loads the latest version, several testing plugins, and dummy data.
+
+## A simple example
+
+A Blueprint might look something like this:
+
+```json
+{
+ "plugins": ["akismet", "gutenberg"],
+ "steps": [
+ {
+ "step": "installTheme",
+ "themeData": {
+ "resource": "wordpress.org/themes",
+ "slug": "twentynineteen"
+ }
+ }
+ ],
+ "siteOptions": {
+ "blogname": "My Blog",
+ "blogdescription": "Just another WordPress site"
+ },
+ "constants": {
+ "WP_DEBUG": true
+ }
+}
+```
+
+The Blueprint above installs the _Akismet_ and _Gutenberg_ plugins and the _Twenty Nineteen_ theme, sets the site name and description, and enables the WordPress debugging mode.
+
+## The benefits of Blueprints
+
+Blueprints are an invaluable tool for building WordPress sites via Playground
+
+- **Flexibility**: developers can make granular adjustments to the build process.
+- **Consistency**: ensure that every new site starts with the same configuration.
+- **Lightweight**: small text files that are easy to store and transfer.
+- **Transparency**: A Blueprint includes all the commands needed to build a snapshot of a WordPress site. You can read through it and understand how the site is built.
+- **Productivity**: reduces the time-consuming process of manually setting up a new WordPress site. Instead of installing and configuring themes and plugins for each new project, apply a Blueprint and set everything in one process.
+- **Up-to-date dependencies**: fetch the latest version of WordPress, a particular plugin, or a theme. Your snapshot is always up to date with the latest features and security fixes.
+- **Collaboration**: the `JSON` files are easy to review in tools like GitHub. Share Blueprints with your team or the WordPress community. Allowing others to use your well-configured setup.
+- **Experimentation and Learning**: For those new to WordPress or looking to experiment with different configurations, Blueprints provide a safe and easy way to try new setups without "breaking" a live site.
+- **WordPress.org integration**: offer a [demo of your plugin](https://developer.wordpress.org/plugins/wordpress-org/previews-and-blueprints/) in the WordPress plugin directory, or a preview in a [Theme Trac ticket](https://meta.trac.wordpress.org/ticket/7382).
+- **Spinning a development environment**: A new developer in the team could download the Blueprint, run a hypothetical `wp up` command, and get a fresh developer environments—loaded with everything they need. The entire CI/CD process can reuse the same Blueprint.
+
+:::info **More Resources**
+Visit these links to learn more about the (endless) possibilities of Blueprints:
+
+- [Introduction to WordPress Playground](https://developer.wordpress.org/news/2024/04/05/introduction-to-playground-running-wordpress-in-the-browser/)
+- Embed a pre-configured WordPress site in your website using the [WordPress Playground Block](https://wordpress.org/plugins/interactive-code-block/).
+- [Blueprints examples](/blueprints/examples)
+- [Demos and apps built with Blueprints](/resources#apps-built-with-wordpress-playground)
+
+:::
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/02-how-to-load-run-blueprints.md b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/02-how-to-load-run-blueprints.md
new file mode 100644
index 0000000000..5db5233b55
--- /dev/null
+++ b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/02-how-to-load-run-blueprints.md
@@ -0,0 +1,47 @@
+---
+title: How to run Blueprints
+slug: /blueprints/tutorial/how-to-load-run-blueprints
+description: Learn about the multiple ways to use blueprints
+---
+
+# How to load and run Blueprints
+
+## URL fragment
+
+The fastest way to run Blueprints is to paste one into the URL "fragment" of a WordPress Playground website. Just add a `#` after the `.net/`.
+
+Let's say you want to create a Playground with specific versions of WordPress and PHP using the following Blueprint:
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json",
+ "preferredVersions": {
+ "php": "7.4",
+ "wp": "5.9"
+ }
+}
+```
+
+To run it, go to `https://playground.wordpress.net/#{"preferredVersions": {"php":"7.4", "wp":"5.9"}}`. You can also use the button below:
+
+[ Run Blueprint ](https://playground.wordpress.net/#{"preferredVersions":{"php":"7.4","wp":"5.9"}})
+
+Use this method to run the example code in the next chapter, [**Build your first Blueprint**](/blueprints/tutorial/build-your-first-blueprint).
+
+### Base64 encoded Blueprints
+
+Some tools, including GitHub, might not format the Blueprint correctly when pasted into the URL. In such cases, [encode your Blueprint in Base64](https://www.base64encode.org) and append it to the URL. For example, that's the above Blueprint in Base64 format: `eyJwcmVmZXJyZWRWZXJzaW9ucyI6IHsicGhwIjoiNy40IiwgIndwIjoiNS45In19`.
+
+To run it, go to [https://playground.wordpress.net/#eyJwcmVmZXJyZWRWZXJzaW9ucyI6IHsicGhwIjoiNy40IiwgIndwIjoiNS45In19](https://playground.wordpress.net/#eyJwcmVmZXJyZWRWZXJzaW9ucyI6IHsicGhwIjoiNy40IiwgIndwIjoiNS45In19)
+
+### Load Blueprint from a URL
+
+When your Blueprint gets too wieldy, you can load it via the `?blueprint-url` query parameter in the URL, like this:
+
+[https://playground.wordpress.net/?blueprint-url=https://raw.githubusercontent.com/wordpress/blueprints/trunk/blueprints/latest-gutenberg/blueprint.json](https://playground.wordpress.net/?blueprint-url=https://raw.githubusercontent.com/wordpress/blueprints/trunk/blueprints/latest-gutenberg/blueprint.json)
+
+Note that the Blueprint must be publicly accessible and served with [the correct `Access-Control-Allow-Origin` header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin):
+
+```
+Access-Control-Allow-Origin: *
+```
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/03-build-your-first-blueprint.md b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/03-build-your-first-blueprint.md
new file mode 100644
index 0000000000..8e0473ea2a
--- /dev/null
+++ b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/03-build-your-first-blueprint.md
@@ -0,0 +1,417 @@
+---
+title: Build your first Blueprint
+slug: /blueprints/tutorial/build-your-first-blueprint
+description: Six steps to your first blueprint
+---
+
+Let's build an elementary Blueprint that
+
+1. Creates a new WordPress site
+2. Sets the site title to "My first Blueprint"
+3. Installs the _Adventurer_ theme
+4. Installs the _Hello Dolly_ plugin from the WordPress plugin directory
+5. Installs a custom plugin
+6. Changes the site content
+
+## 1. Create a new WordPress site
+
+Let's start by creating a `blueprint.json` file with the following contents:
+
+```json
+{}
+```
+
+It may seem like nothing is happening, but this Blueprint already spins up a WordPress site with the latest major version.
+
+[ Run Blueprint ](https://playground.wordpress.net/#{})
+
+:::tip **Autocomplete**
+
+If you use an IDE, like VS Code or PHPStorm, you can use the [Blueprint JSON Schema](https://playground.wordpress.net/blueprint-schema.json) for an autocompleted Blueprint development experience. Add the following line at the top of your `blueprint.json` file:
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json"
+}
+```
+
+:::
+Here's what it looks like in VS Code:
+
+
+
+## 2. Set the site title to "My first Blueprint"
+
+Blueprints consist of a series of [steps](/blueprints/steps) that define how to build a WordPress site. Before you write the first step, declare an empty list of steps:
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json",
+ "steps": []
+}
+```
+
+This Blueprint isn't very exciting—it creates the same default site as the empty Blueprint above. Let's do something about it!
+
+WordPress stores the site title in the `blogname` option. Add your first step and set that option to "My first Blueprint":
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json",
+ "steps": [
+ {
+ "step": "setSiteOptions",
+ "options": {
+ "blogname": "My first Blueprint"
+ }
+ }
+ ]
+}
+```
+
+[ Run Blueprint ](https://playground.wordpress.net/#https://playground.wordpress.net/#eyIkc2NoZW1hIjoiaHR0cHM6Ly9wbGF5Z3JvdW5kLndvcmRwcmVzcy5uZXQvYmx1ZXByaW50LXNjaGVtYS5qc29uIiwic3RlcHMiOlt7InN0ZXAiOiJzZXRTaXRlT3B0aW9ucyIsIm9wdGlvbnMiOnsiYmxvZ25hbWUiOiJNeSBmaXJzdCBCbHVlcHJpbnQifX1dfQ==)
+
+The [`setSiteOptions` step](/blueprints/steps#SetSiteOptionsStep) specifies the site options in the WordPress database. The `options` object contains the key-value pairs to set. In this case, you changed the value of the `blogname` key to "My first Blueprint". You can read more about all available steps in the [Blueprint Steps API Reference](/blueprints/steps).
+
+### Shorthands
+
+You can specify some steps using a shorthand syntax. For example, you could write the `setSiteOptions` step like this:
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json",
+ "siteOptions": {
+ "blogname": "My first Blueprint"
+ }
+}
+```
+
+The shorthand syntax and the step syntax correspond with each other. Every step specified with the shorthand syntax is automatically added at the beginning of the `steps` array in an arbitrary order. Which should you choose? Use shorthands when brevity is your main concern, use steps when you need more control over the order of execution.
+
+## 3. Install the _Adventurer_ theme
+
+Adventurer is an open-source theme [available in the WordPress theme directory](https://wordpress.org/themes/adventurer/). Let's install it using the [`installTheme` step](/blueprints/steps#InstallThemeStep):
+
+```json
+{
+ "siteOptions": {
+ "blogname": "My first Blueprint"
+ },
+ "steps": [
+ {
+ "step": "installTheme",
+ "themeData": {
+ "resource": "wordpress.org/themes",
+ "slug": "adventurer"
+ }
+ }
+ ]
+}
+```
+
+[ Run Blueprint ](https://playground.wordpress.net/#eyIkc2NoZW1hIjoiaHR0cHM6Ly9wbGF5Z3JvdW5kLndvcmRwcmVzcy5uZXQvYmx1ZXByaW50LXNjaGVtYS5qc29uIiwib3B0aW9ucyI6eyJibG9nbmFtZSI6Ik15IGZpcnN0IEJsdWVwcmludCJ9LCJzdGVwcyI6W3sic3RlcCI6Imluc3RhbGxUaGVtZSIsInRoZW1lWmlwRmlsZSI6eyJyZXNvdXJjZSI6IndvcmRwcmVzcy5vcmcvdGhlbWVzIiwic2x1ZyI6ImFkdmVudHVyZXIifX1dfQ==)
+
+The site should now look like the screenshot below:
+
+
+
+### Resources
+
+The `themeData` defines a [resource](/blueprints/steps/resources) and referrences an external file required to complete the step. Playground supports different types of resources, including
+
+- `url`,
+- `wordpress.org/themes`,
+- `wordpress.org/plugins`,
+- `vfs`(virtual file system), or
+- `literal`.
+
+The example uses the `wordpress.org/themes` resource, which requires a `slug` identical to the one used in WordPress theme directory:
+
+In this case, `https://wordpress.org/themes//` becomes `https://wordpress.org/themes/adventurer/`.
+
+:::note
+Learn more about the supported resources in the [Blueprint Resources API Reference](/blueprints/steps/resources/).
+:::
+
+## 4. Install the _Hello Dolly_ plugin
+
+A classic WordPress plugin that displays random lyrics from the song "Hello, Dolly!" in the admin dashboard. Let's install it using the [`installPlugin` step](/blueprints/steps#InstallPluginStep):
+
+```json
+{
+ "siteOptions": {
+ "blogname": "My first Blueprint"
+ },
+ "steps": [
+ {
+ "step": "installTheme",
+ "themeData": {
+ "resource": "wordpress.org/themes",
+ "slug": "adventurer"
+ }
+ },
+ {
+ "step": "installPlugin",
+ "pluginData": {
+ "resource": "wordpress.org/plugins",
+ "slug": "hello-dolly"
+ }
+ }
+ ]
+}
+```
+
+[ Run Blueprint ](https://playground.wordpress.net/#eyJzaXRlT3B0aW9ucyI6eyJibG9nbmFtZSI6Ik15IGZpcnN0IEJsdWVwcmludCJ9LCJzdGVwcyI6W3sic3RlcCI6Imluc3RhbGxUaGVtZSIsInRoZW1lWmlwRmlsZSI6eyJyZXNvdXJjZSI6IndvcmRwcmVzcy5vcmcvdGhlbWVzIiwic2x1ZyI6ImFkdmVudHVyZXIifX0seyJzdGVwIjoiaW5zdGFsbFBsdWdpbiIsInBsdWdpblppcEZpbGUiOnsicmVzb3VyY2UiOiJ3b3JkcHJlc3Mub3JnL3BsdWdpbnMiLCJzbHVnIjoiaGVsbG8tZG9sbHkifX1dfQ==)
+
+The Hello Dolly plugin is now installed and activated.
+
+Like the `themeData`, the `pluginData` defines a reference to an external file required for the step. The example uses the `wordpress.org/plugins` resource to install the plugin with the matching `slug` from the WordPress plugin directory.
+
+## 5. Install a custom plugin
+
+Let's install a custom WordPress plugin that adds a message to the admin dashboard:
+
+```php
+Hello from My Custom Plugin!';
+}
+
+add_action('admin_notices', 'my_custom_plugin');
+```
+
+You can use the [installPlugin](/blueprints/steps#InstallPluginStep), but that requires creating a ZIP file. Let's start with something different to see if the plugin works:
+
+1. Create a `wp-content/plugins/hello-from-the-dashboard` directory using the [`mkdir` step](/blueprints/steps#MkdirStep).
+2. Write a `plugin.php` file using the [`writeFile` step](/blueprints/steps#WriteFileStep).
+3. Activate the plugin using the [`activatePlugin` step](/blueprints/steps#ActivatePluginStep).
+
+Here's what that looks like in a Blueprint:
+
+```json
+{
+ // ...
+ "steps": [
+ // ...
+ {
+ "step": "mkdir",
+ "path": "/wordpress/wp-content/plugins/hello-from-the-dashboard"
+ },
+ {
+ "step": "writeFile",
+ "path": "/wordpress/wp-content/plugins/hello-from-the-dashboard/plugin.php",
+ "data": "Hello from My Custom Plugin!';\n}\n\nadd_action('admin_notices', 'my_custom_plugin');"
+ },
+ {
+ "step": "activatePlugin",
+ "pluginPath": "hello-from-the-dashboard/plugin.php"
+ }
+ ]
+}
+```
+
+The last thing to do is log the user in as an admin. You can do that with a shorthand of the [`login` step](/blueprints/steps#LoginStep):
+
+```json
+{
+ "login": true,
+ "steps": {
+ // ...
+ }
+}
+```
+
+Here's the complete Blueprint:
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json",
+ "login": true,
+ "siteOptions": {
+ "blogname": "My first Blueprint"
+ },
+ "steps": [
+ {
+ "step": "installTheme",
+ "themeData": {
+ "resource": "wordpress.org/themes",
+ "slug": "adventurer"
+ }
+ },
+ {
+ "step": "installPlugin",
+ "pluginData": {
+ "resource": "wordpress.org/plugins",
+ "slug": "hello-dolly"
+ }
+ },
+ {
+ "step": "mkdir",
+ "path": "/wordpress/wp-content/plugins/hello-from-the-dashboard"
+ },
+ {
+ "step": "writeFile",
+ "path": "/wordpress/wp-content/plugins/hello-from-the-dashboard/plugin.php",
+ "data": "Hello from My Custom Plugin!';\n}\n\nadd_action('admin_notices', 'my_custom_plugin');"
+ },
+ {
+ "step": "activatePlugin",
+ "pluginPath": "hello-from-the-dashboard/plugin.php"
+ }
+ ]
+}
+```
+
+[ Run Blueprint ](https://playground.wordpress.net/#eyJsb2dpbiI6dHJ1ZSwic2l0ZU9wdGlvbnMiOnsiYmxvZ25hbWUiOiJNeSBmaXJzdCBCbHVlcHJpbnQifSwic3RlcHMiOlt7InN0ZXAiOiJpbnN0YWxsVGhlbWUiLCJ0aGVtZVppcEZpbGUiOnsicmVzb3VyY2UiOiJ3b3JkcHJlc3Mub3JnL3RoZW1lcyIsInNsdWciOiJhZHZlbnR1cmVyIn19LHsic3RlcCI6Imluc3RhbGxQbHVnaW4iLCJwbHVnaW5aaXBGaWxlIjp7InJlc291cmNlIjoid29yZHByZXNzLm9yZy9wbHVnaW5zIiwic2x1ZyI6ImhlbGxvLWRvbGx5In19LHsic3RlcCI6Im1rZGlyIiwicGF0aCI6Ii93b3JkcHJlc3Mvd3AtY29udGVudC9wbHVnaW5zL2hlbGxvLW9uLXRoZS1kYXNoYm9hcmQifSx7InN0ZXAiOiJ3cml0ZUZpbGUiLCJwYXRoIjoiL3dvcmRwcmVzcy93cC1jb250ZW50L3BsdWdpbnMvaGVsbG8tb24tdGhlLWRhc2hib2FyZC9wbHVnaW4ucGhwIiwiZGF0YSI6Ijw/cGhwXG4vKlxuUGx1Z2luIE5hbWU6IFwiSGVsbG9cIiBvbiB0aGUgRGFzaGJvYXJkXG5EZXNjcmlwdGlvbjogQSBjdXN0b20gcGx1Z2luIHRvIHNob3djYXNlIFdvcmRQcmVzcyBCbHVlcHJpbnRzXG5WZXJzaW9uOiAxLjBcbkF1dGhvcjogV29yZFByZXNzIENvbnRyaWJ1dG9yc1xuKi9cblxuZnVuY3Rpb24gbXlfY3VzdG9tX3BsdWdpbigpIHtcbiAgICBlY2hvICc8aDE+SGVsbG8gZnJvbSBNeSBDdXN0b20gUGx1Z2luITwvaDE+Jztcbn1cblxuYWRkX2FjdGlvbignYWRtaW5fbm90aWNlcycsICdteV9jdXN0b21fcGx1Z2luJyk7In0seyJzdGVwIjoiYWN0aXZhdGVQbHVnaW4iLCJwbHVnaW5QYXRoIjoiaGVsbG8tb24tdGhlLWRhc2hib2FyZC9wbHVnaW4ucGhwIn1dfQ==)
+
+That's what it looks like when you navigate to the dashboard:
+
+
+
+### Create a plugin and zip it
+
+Encoding PHP files as `JSON` can be useful for quick testing, but it's inconvenient and difficult to read. Instead, create a file with the plugin code, compress it, and use the `ZIP` file as the `resource` in the [`installPlugin` step](/blueprints/steps#InstallPluginStep) to install it (the path in the `URL` should match the one in your GitHub repository):
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json",
+ "login": true,
+ "siteOptions": {
+ "blogname": "My first Blueprint"
+ },
+ "steps": [
+ {
+ "step": "installTheme",
+ "themeData": {
+ "resource": "wordpress.org/themes",
+ "slug": "adventurer"
+ }
+ },
+ {
+ "step": "installPlugin",
+ "pluginData": {
+ "resource": "wordpress.org/plugins",
+ "slug": "hello-dolly"
+ }
+ },
+ {
+ "step": "installPlugin",
+ "pluginData": {
+ "resource": "url",
+ "url": "https://raw.githubusercontent.com/wordpress/blueprints/trunk/docs/assets/hello-from-the-dashboard.zip"
+ }
+ }
+ ]
+}
+```
+
+You can shorten that Blueprint even more using the shorthand syntax:
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json",
+ "login": true,
+ "siteOptions": {
+ "blogname": "My first Blueprint"
+ },
+ "plugins": ["hello-dolly", "https://raw.githubusercontent.com/wordpress/blueprints/trunk/docs/assets/hello-from-the-dashboard.zip"],
+ "steps": [
+ {
+ "step": "installTheme",
+ "themeData": {
+ "resource": "wordpress.org/themes",
+ "slug": "adventurer"
+ }
+ }
+ ]
+}
+```
+
+[ Run Blueprint ](https://playground.wordpress.net/#eyIkc2NoZW1hIjoiaHR0cHM6Ly9wbGF5Z3JvdW5kLndvcmRwcmVzcy5uZXQvYmx1ZXByaW50LXNjaGVtYS5qc29uIiwibG9naW4iOnRydWUsInNpdGVPcHRpb25zIjp7ImJsb2duYW1lIjoiTXkgZmlyc3QgQmx1ZXByaW50In0sInBsdWdpbnMiOlsiaGVsbG8tZG9sbHkiLCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vYWRhbXppZWwvYmx1ZXByaW50cy90cnVuay9kb2NzL2hlbGxvLW9uLXRoZS1kYXNoYm9hcmQuemlwIl0sInN0ZXBzIjpbeyJzdGVwIjoiaW5zdGFsbFRoZW1lIiwidGhlbWVaaXBGaWxlIjp7InJlc291cmNlIjoid29yZHByZXNzLm9yZy90aGVtZXMiLCJzbHVnIjoiYWR2ZW50dXJlciJ9fV19)
+
+## 6. Change the site content
+
+Finally, let's delete the default content of the site and import a new one from a WordPress export file (WXR).
+
+### Delete the old content
+
+There isn't a Blueprint step to delete the default content, but you can do that with a snippet of PHP code:
+
+```php
+ -1,
+ 'post_type' => array('post', 'page'),
+ 'post_status' => 'any'
+));
+
+foreach ($posts as $post) {
+ wp_delete_post($post->ID, true);
+}
+```
+
+To run that code during the site setup, use the [`runPHP` step](/blueprints/steps#RunPHPStep):
+
+```json
+{
+ // ...
+ "steps": [
+ // ...
+ {
+ "step": "runPHP",
+ "code": " -1,\n 'post_type' => array('post', 'page'),\n 'post_status' => 'any'\n));\n\nforeach ($posts as $post) {\n wp_delete_post($post->ID, true);\n}"
+ }
+ ]
+}
+```
+
+### Import the new content
+
+Let's use the [`importWxr` step](/blueprints/steps#ImportWXRStep) to import a WordPress export (`WXR`) file that helps test WordPress themes. The file is available in the [WordPress/theme-test-data](https://github.com/WordPress/theme-test-data) repository, and you can access it via its `raw.githubusercontent.com` address: [https://raw.githubusercontent.com/WordPress/theme-test-data/master/themeunittestdata.wordpress.xml](https://raw.githubusercontent.com/WordPress/theme-test-data/master/themeunittestdata.wordpress.xml).
+
+Here's what the final Blueprint looks like:
+
+```json
+{
+ "$schema": "https://playground.wordpress.net/blueprint-schema.json",
+ "login": true,
+ "siteOptions": {
+ "blogname": "My first Blueprint"
+ },
+ "plugins": ["hello-dolly", "https://raw.githubusercontent.com/wordpress/blueprints/trunk/docs/assets/hello-from-the-dashboard.zip"],
+ "steps": [
+ {
+ "step": "installTheme",
+ "themeData": {
+ "resource": "wordpress.org/themes",
+ "slug": "adventurer"
+ }
+ },
+ {
+ "step": "runPHP",
+ "code": " -1,\n 'post_type' => array('post', 'page'),\n 'post_status' => 'any'\n));\n\nforeach ($posts as $post) {\n wp_delete_post($post->ID, true);\n}"
+ },
+ {
+ "step": "importWxr",
+ "file": {
+ "resource": "url",
+ "url": "https://raw.githubusercontent.com/WordPress/theme-test-data/master/themeunittestdata.wordpress.xml"
+ }
+ }
+ ]
+}
+```
+
+[ Run Blueprint ](https://playground.wordpress.net/#eyIkc2NoZW1hIjoiaHR0cHM6Ly9wbGF5Z3JvdW5kLndvcmRwcmVzcy5uZXQvYmx1ZXByaW50LXNjaGVtYS5qc29uIiwibG9naW4iOnRydWUsInNpdGVPcHRpb25zIjp7ImJsb2duYW1lIjoiTXkgZmlyc3QgQmx1ZXByaW50In0sInBsdWdpbnMiOlsiaGVsbG8tZG9sbHkiLCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vYWRhbXppZWwvYmx1ZXByaW50cy90cnVuay9kb2NzL2Fzc2V0cy9oZWxsby1mcm9tLXRoZS1kYXNoYm9hcmQuemlwIl0sInN0ZXBzIjpbeyJzdGVwIjoiaW5zdGFsbFRoZW1lIiwidGhlbWVaaXBGaWxlIjp7InJlc291cmNlIjoid29yZHByZXNzLm9yZy90aGVtZXMiLCJzbHVnIjoiYWR2ZW50dXJlciJ9fSx7InN0ZXAiOiJydW5QSFAiLCJjb2RlIjoiPD9waHBcbnJlcXVpcmUgJy93b3JkcHJlc3Mvd3AtbG9hZC5waHAnO1xuXG4kcG9zdHMgPSBnZXRfcG9zdHMoYXJyYXkoXG4gICAgJ251bWJlcnBvc3RzJyA9PiAtMSxcbiAgICAncG9zdF90eXBlJyA9PiBhcnJheSgncG9zdCcsICdwYWdlJyksXG4gICAgJ3Bvc3Rfc3RhdHVzJyA9PiAnYW55J1xuKSk7XG5cbmZvcmVhY2ggKCRwb3N0cyBhcyAkcG9zdCkge1xuICAgIHdwX2RlbGV0ZV9wb3N0KCRwb3N0LT5JRCwgdHJ1ZSk7XG59In0seyJzdGVwIjoiaW1wb3J0V3hyIiwiZmlsZSI6eyJyZXNvdXJjZSI6InVybCIsInVybCI6Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9Xb3JkUHJlc3MvdGhlbWUtdGVzdC1kYXRhL21hc3Rlci90aGVtZXVuaXR0ZXN0ZGF0YS53b3JkcHJlc3MueG1sIn19XX0=)
+
+And that's it. Congratulations on creating your first Blueprint! 🥳
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/index.md b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/index.md
new file mode 100644
index 0000000000..02b0aa5e21
--- /dev/null
+++ b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/blueprints/tutorial/index.md
@@ -0,0 +1,18 @@
+---
+title: Blueprints 101
+description: Entrance to a short course on Blueprints
+hide_table_of_contents: false
+slug: /blueprints/tutorial
+---
+
+# Blueprints 101 - A crash course
+
+Welcome to a Blueprints crash course, where you'll find everything you need to know about Blueprints: what they are, how to create them, and how to use them effectively.
+
+1. [What are Blueprints, and what can you do with them?](/blueprints/tutorial/what-are-blueprints-what-you-can-do-with-them)
+2. [How to load and run Blueprints](/blueprints/tutorial/how-to-load-run-blueprints)
+3. [Build your first Blueprint](/blueprints/tutorial/build-your-first-blueprint)
+
+:::tip
+If you encounter any issues while following this tutorial, refer to the [Troubleshoot and debug Blueprints](/blueprints/troubleshoot-and-debug) section for tips and tools to help you solve them.
+:::
diff --git a/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/developers/03-build-an-app/01-index.md b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/developers/03-build-an-app/01-index.md
new file mode 100644
index 0000000000..076e5217c2
--- /dev/null
+++ b/packages/docs/site/i18n/tl/docusaurus-plugin-content-docs/current/developers/03-build-an-app/01-index.md
@@ -0,0 +1,202 @@
+---
+title: Quick Start Guide for Developers
+slug: /developers/build-your-first-app
+---
+
+# Quick Start Guide for Developers
+
+WordPress Playground was created as a programmable tool. Below you'll find a few examples of what you can do with it. Each discussed API is described in detail in the [APIs section](/developers/apis/):
+
+import TOCInline from '@theme/TOCInline';
+
+
+
+## Embed WordPress on your website
+
+Playground can be embedded on your website using the HTML `