Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.gitignoreentirely (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).