Phase 11.2: Ready to share: summercms.io website and newsletter plugin - Discussion Log
Audit trail only. Do not use as input to planning, research, or execution agents.
Decisions are captured in CONTEXT.md — this log preserves the alternatives considered.
Date: 2026-09-29
Phase: 11.2-ready-to-share-summercms-io-website-and-newsletter-plugin
Areas discussed: Website build & hosting, Landing page content, Signup & opt-in flow, Plugin shape & future
Website build & hosting
| Option |
Description |
Selected |
| Prerendered (vite-ssg) |
Vite + Vue with build-time prerendering |
|
| Nuxt 4 (static generate) |
Same stack as vue-fonoteka-app, nuxt generate |
✓ |
| Plain Vue SPA |
Empty HTML shell until JS runs |
|
| Option |
Description |
Selected |
| Embedded in the Go binary |
go:embed site + docs, one binary |
✓ |
| Served from disk by the binary |
dist/ next to the binary |
|
| Static host/CDN + API binary |
Separate hosting, needs CORS |
|
| Option |
Description |
Selected |
| English only |
Docs are English |
|
| English + Polish |
vue-i18n + phrasebook for site and mail |
✓ |
| Option |
Description |
Selected |
| New framework module |
Reusable public static handler in summercms.go |
|
| In sm-summercms-app only |
App-local handler |
|
| You decide |
Research picks |
|
User's choice: Nuxt 4 static generate, embedded in the binary, EN + PL. Serving: "we do as we did in wintercms - sm-summercms-plugin that does all the stuff around serving data. this is proven approach, used in figs.org.pl, golem15.com etc".
Notes: The user first asked what "serving code" meant. After the explanation they chose a site plugin, which added a fourth repo.
Landing page content
| Option |
Description |
Selected |
| Hero + signup |
Pitch with signup in the hero |
✓ |
| What it is / features |
Feature list |
✓ |
| Coming from WinterCMS |
Side-by-side, links to the 11.1 concept map |
✓ |
| Status & roadmap |
Honest pre-release block |
✓ |
User's choice: All four. Notes on the WinterCMS section: "nice if it would have some cool way that it started in October (OctoberCMS) went trough WinterCMS but now it's time for Summer".
Other answers: status tone was clear pre-release (the recommended option); no repo link yet (recommended); "Built by Golem15" credit (recommended).
Signup & opt-in flow
| Question |
Options |
Selected |
| Spam guard |
Honeypot + rate limit / Cloudflare Turnstile |
Honeypot + rate limit |
| Consent |
Required checkbox / Notice text only |
Required checkbox |
| Re-signup |
Same neutral response / Tell the user their status |
Same neutral response |
| After confirm |
Thank-you page + welcome mail / Thank-you page only |
Thank-you page + welcome mail |
Plugin shape & future
| Question |
Options |
Selected |
| Users |
Standalone subscribers / Optional link to users |
Standalone |
| Schema |
Subscribers only, sending-ready / Port all PHP tables now |
Subscribers only, sending-ready |
| Admin |
List+filter+delete / Also CSV export / Also manual add/edit |
Free text: "add/edit/delete are must be, csv export - i don't think we have that ready within framework so it waits." |
| Module path |
git.golem15.com / github.com/golem15com |
git.golem15.com |
| Admin add status |
Pending + confirmation mail / Admin chooses |
Pending + confirmation mail |
Notes: The first question batch in this area failed in the UI and was asked again.
Claude's Discretion
- How long tokens stay valid, the resend throttle, the token format and the URL scheme.
- Visual design within the Direction C v2 brand, and the copy.
- Whether the plugin or the root app embeds the Nuxt build, and how the docs are mounted.
Deferred Ideas
- CSV export of subscribers, which needs framework support.
- Sending newsletters and merging audiences, in a later phase.
- Renaming fonoteka.go to sm-fonoteka-app.
- A source repo link on the landing page.
- Polish docs.