Skip to content
Docs

Before you build

A community site is a set of decisions before it is a set of files. Make the calls here, then install: the setup wizard turns your answers into config.

Popular ships a setup wizard that writes your config, a code-of-conduct seed page, and a DECISIONS.md audit trail from a short interview. It works best when you have already thought about the questions below, so this page is that interview on paper.

Everything here is generated from the same schema the wizard reads, so the two can never disagree. This checklist ticks and remembers your progress as you decide over days, that is the theme’s persistent-checklist feature, running on the theme’s own docs before you have installed anything.

Decide before you install 0/2

Judgement calls with no default. Settle these with your co-organizers first: the wizard records your answers in DECISIONS.md so the next organizer knows why.

  • Prefer a shared community org over a personal account, so the site outlives any one organizer's access. Recorded only, this writes no config. Handbook

  • Adopt an established one rather than writing your own. The Contributor Covenant is common; Python-adjacent groups often use the PSF Code of Conduct. Recorded only. Handbook

Have these ready 0/10

Values the wizard writes into your config. Every one is skippable, skip it and you get a sensible default you can change later.

  • Used as the site title and woven into the code-of-conduct and start-here pages.

  • One warm sentence: who it is for and that newcomers are welcome.

  • Deploying to GitHub Pages under a subpath (e.g. /my-club/)? Include it, the theme handles subpaths.

  • A root-absolute path like /images/logo.png. 'Text-only for now' is a fine answer, skip it and the wordmark shows.

  • One colour is enough: the theme derives badges, tags, hovers and link states from it. Skip it and you get the default palette, which is one line to change later. Handbook

  • A code of conduct needs a named reporting contact, not just a page. A shared inbox is better than one person. Handbook

  • A Meetup, Luma, or Eventbrite URL, or skip if you take RSVPs another way.

  • The community lives in chat between events. Set this and a 'Join the chat' button appears in the hero and footer.

  • Instagram, Mastodon, an email, whatever your community actually uses. Skippable, and repeatable.

  • Turn on if you run talks and want to recruit speakers. Off by default.

Nothing here is a gate. Skip every question and the wizard still produces a clean starter config you can grow into. The decisions in the first group have no default because they are judgement calls, not settings: the wizard records whatever you decide (or that you have not yet) so the reasoning outlives you.

When you’re ready

Install the theme, then run the wizard (or fill the config in by hand). Your answers land in one file:

hugo.toml, under [params]. Run the wizard with python3 scripts/setup.py, or edit the file directly, the configuration reference documents every key.

src/config.ts. Run the wizard with python3 scripts/setup.py, or edit the file directly, the configuration reference documents every export.

Next: Quick start walks through installing, starting from a demo, and deploying.