Developer guide

Build, inspect, and maintain Zotonic sites and modules.

Build a Zotonic site, understand its applications, and use the development tools to check your work. These guides use a local example site named garden. Replace that name with your own site when following a task.

Use Erlang/OTP 28, the recommended Erlang version for these guides.

Start with Getting started for a first working page. Use Understanding Zotonic applications to find where a change belongs. The command-line and development tools collections help you inspect the running system. The reference collection lists every bundled CLI command in the checked source revision.

Explore this guide

  1. 1Getting startedBuild a local site and make your first working change.
  2. 2Understanding Zotonic applicationsKnow where files belong and how sites and modules fit together.
  3. 3Working from the command lineUse the shell and CLI to inspect and manage a development installation.
  4. 4Templates and page renderingBuild pages from templates, resources, and reusable components.
  5. 5Content and dataRead, connect, search, and manage site content from code.
  6. 6Building reusable functionalityAdd modules, models, controllers, and event handlers.
  7. 7Browser interaction and APIsConnect browser actions to server-side behavior.
  8. 8Development tools and debuggingFind the active code, trace a request, and diagnose unexpected behavior.
  9. 9Testing and maintaining applicationsVerify behavior and keep changes easy to maintain.
  10. 10Configuration and deploymentConfigure environments, storage, and a repeatable release process.
  11. 11TroubleshootingWork from a symptom to a focused check and a verified fix.
  12. 12Command-line referenceLook up the syntax, requirements, and effects of each bundled command.
  13. 13Validate a form on both sidesUse semantic form controls with labels and meaningful names. Add Zotonic validators for immediate feedback, then validate the submitted values again at the server boundary.
  14. 14Installation and deploymentPrepare an environment and deploy a release with a recovery plan.
  15. 15Release Notes
More articles and background (27)