From 87b0893ebd735156545d075018986ab98758f7ce Mon Sep 17 00:00:00 2001 From: Mischa Date: Sun, 19 Apr 2026 00:59:41 +0200 Subject: [PATCH] Add README with development setup and deployment workflow Co-Authored-By: Claude Sonnet 4.6 --- README.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..663ff63 --- /dev/null +++ b/README.md @@ -0,0 +1,49 @@ +# natascha-rieter.nl — Grav CMS + +## Local development + +Requires Docker. To set up from scratch: + +``` +make setup +``` + +This starts the container and installs all plugins listed in `plugins.txt` via GPM. + +Other commands: + +``` +make start # start the container +make stop # stop the container +make install-plugins # (re)install plugins from plugins.txt +``` + +Site runs at http://localhost:8080. + +## Repository structure + +| Path | Description | In git | +|------|-------------|--------| +| `user/config/` | Site and plugin configuration | yes | +| `user/pages/` | Page content | yes (see deployment note) | +| `user/themes/natascha/` | Custom theme | yes | +| `user/plugins/` | Plugins (see plugins.txt) | no | +| `user/accounts/` | Admin credentials | no | +| `user/data/` | Runtime data | no | +| `user/cache/` | Generated cache | no | + +## Deployment + +Production is shared hosting. Deploy via FTP. + +### Initial deploy +Upload the full `user/` directory (including locally installed plugins from `user/plugins/`). + +### Subsequent deploys +**Only upload** `user/themes/` and `user/config/`. Do **not** overwrite `user/pages/` — content is managed online by editors after go-live and a deploy would overwrite their changes. + +> **Future improvement**: once the site is live and content is stable, move `user/pages/` to `.gitignore` entirely (Option 1). Content backups should be handled separately (e.g. a server-side backup solution), not via git. + +## Plugins + +Plugins are not committed to git. The full list is in `plugins.txt`. To install locally, run `make install-plugins`. On the production server, plugins must be uploaded manually (no CLI access on shared hosting).