=== Parkstatic ===
Contributors: parkstatic
Tags: static site, performance, front-end, headless, metadata
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Serve a fast static front-end from your WordPress domain while keeping wp-admin, the REST API, and your full dashboard running on WordPress.

== Description ==

Parkstatic lets you serve a fast, static front-end from your WordPress domain while keeping the WordPress dashboard fully intact. Your plugins, admin screens, and existing workflows all keep working. Only the public front end is served statically. Requests to `wp-admin`, `wp-login.php`, the REST API, and other WordPress paths are always handled by WordPress.

https://www.youtube.com/watch?v=3CXKd7UjQWE

This free version ships a **bundled demo site** so you can try the static front-end experience end to end without any external service:

* Switch the public front end between **WordPress** and a static **Test site** (the bundled demo) from the Deploy screen.
* Manage your **site title, description, and favicon**, and choose whether the live front end uses your WordPress values or the values baked into the static build.
* See those values injected into the served static page in real time.

= What the Test site is for =

The Test site is a small static page bundled inside the plugin. It is served read-only from the plugin so you can preview exactly how static front-end mode behaves: how the switch works, and how your Site identity and Site metadata settings are applied to a served static page. It never overwrites or deletes your WordPress content. Switching back to WordPress mode restores your normal theme instantly.

= Parkstatic Premium =

**Parkstatic Premium** extends Parkstatic into a complete static-site platform. It automatically builds and deploys your own prebuilt static site (for example a Vite or React app) straight from GitHub, and adds multi-page publishing, custom Open Graph fields, and a configurable Content Security Policy. Premium is a separate paid product available from the Parkstatic website and is not part of this WordPress.org plugin; this free plugin is fully functional on its own, and Premium simply adds deployment of your real site.

* Learn more: [parkstatic.site](https://parkstatic.site/)

= Key features =

* Front-end mode switch: serve WordPress or the bundled static Test site at your domain root.
* Bundled demo site served read-only from the plugin, with no external service and no uploads.
* Site identity and metadata tools (title, description, favicon) with optional injection into served static HTML.
* Leaves `wp-admin` and the WordPress REST API untouched.

= Privacy =

This free version does not contact any external servers on its own. It works entirely on your site. The only optional external connection is Freemius, and only if you choose to connect an account or purchase Parkstatic Premium. See **External services** below.

== External services ==

This free version does not call any external service to provide its functionality. The bundled demo is served locally and your metadata is stored in your own WordPress database.

= Freemius (https://freemius.com) =

Used only for optional account connection and to purchase or manage Parkstatic Premium. If - and only if - you choose to connect an account or buy a plan, the plugin connects to Freemius and may send your site URL, WordPress version, PHP version, and administrator email. Freemius processes that data under its own policies. All features of this free plugin work whether or not you connect Freemius.

* Privacy Policy: [freemius.com/privacy](https://freemius.com/privacy/)
* Terms: [freemius.com/terms](https://freemius.com/terms/)

== Installation ==

1. Upload the `parkstatic` folder to the `/wp-content/plugins/` directory, or install through the WordPress plugins screen.
2. Activate the plugin through the **Plugins** screen in WordPress.
3. Open **Parkstatic → Settings** to set your site title, description, and favicon.
4. Open **Parkstatic → Deploy**, choose **Test site**, and save to preview static front-end mode.

== Frequently Asked Questions ==

= Does this replace my WordPress admin? =

No. Only the public front end is affected, and only while Test site mode is on. `wp-admin`, `wp-login.php`, the REST API, and cron are always handled by WordPress.

= Will the Test site delete or overwrite my site? =

No. The demo is served read-only from the plugin and your WordPress content is left untouched. Switch back to WordPress mode at any time to restore your normal theme.

= Is the plugin free? =

Yes. Every feature in this WordPress.org version is free and fully functional, with no license checks inside the plugin. Automatic deployment of your own site is a separate paid product (Parkstatic Premium) hosted on the Parkstatic website.

= Does the plugin contact external servers? =

Not on its own. It connects to Freemius only if you choose to connect an account or purchase Parkstatic Premium.

= Can I host WordPress in a subdirectory? =

Static front-end serving works on both root and subdirectory installs.

== Screenshots ==

1. Settings: Manage your site title, description, and favicon. Toggle each field to override the static build's values or keep the originals.
2. Deploy: Switch the public front end between WordPress and the bundled static Test site. wp-admin always stays on WordPress.
3. Test site: The bundled demo served statically at your domain root, with your title and favicon injected in real time.

== Changelog ==

= 1.0.0 =
* Initial public release for the WordPress Plugin Directory.
* Switch the public front end between WordPress and a bundled static Test site.
* Site identity and metadata tools, with optional injection into served static HTML.
* No external service calls; Test site is served locally from the plugin.
* Prefer clean /assets/ URLs and only fall back to the legacy query-string form on positive proof the host intercepts /assets/, so modern SSR/Vite builds hydrate instead of failing with a blank page.

== Upgrade Notice ==

= 1.0.0 =
Initial public release.
