This roadmap tracks the path to v1. It is derived from doc 00 §6 and the strategic proposals in docs/proposals/14-proposals-strategic.md.
Each phase corresponds to a GitHub milestone. Each milestone collects the issues for that phase. Filter by milestone in the issues view.
Goal: validate the stack end-to-end. If anything is wrong with our architectural assumptions, find out now, not in month 18.
- Monorepo bootstrap (Go workspace + pnpm workspace + Makefile + Docker Compose).
- Go HTTP server with
/healthz,/readyz, Postgres connection, basic migrations. - One REST endpoint:
GET /api/v1/postsreturning seeded data. - Next.js public app rendering one post via the API.
- Block JSON tree storage in
posts.content_blocks(JSONB). - Render one block (
core/paragraph) end-to-end. - Basic auth (signup, login, session in Redis).
- Admin shell with one page (post list).
- CI pipeline: lint + unit tests on PR.
Exit criteria: docker-compose up boots a working stack; you can create a user, log in, see one post on the admin list, and render it at a public URL.
Goal: the content management feature set people expect.
- Posts, pages, custom post types per doc 01.
- Taxonomies (categories, tags, hierarchical custom).
- Comments with moderation.
- Media library + upload (S3-compatible).
- Permalinks + redirect history.
- Users, roles, capabilities per doc 06.
- Admin CRUD UI for all of the above.
- REST API per doc 05 §3.1.
- WP REST shim per doc 05 §3.3 (the basics).
- Search via Postgres FTS per doc 01 §8.
- Settings registry per doc 05 §2.6.
Exit criteria: usable enough to run a personal blog. Dogfooding starts here.
Goal: a block editor people actually want to use.
- Block JSON tree data model per doc 04 §1.
- ~20 core blocks (paragraph, heading, image, list, quote, code, table, gallery, embed, columns, group, button, separator, spacer, cover, media-text, video, audio, html, more).
- Lexical-based rich text per doc 04 §4.
- Block inserter, toolbar, inspector sidebar, list view.
- Multi-select, drag-drop reorder.
- Autosave, revisions.
- Server-side render walker per doc 04 §5.
- Custom fields panel (JSON Schema driven) per doc 04 §11.
Exit criteria: write a long-form post with mixed content and have it render correctly on the public site.
Goal: developers can build and ship themes.
- Theme manifest +
theme.jsonper doc 03 §2-3. - Template hierarchy resolver per doc 03 §4.
- Classic themes (file-defined templates).
- Block themes (DB-stored templates with file fallback) per doc 03 §6.
- Customizer per doc 03 §8.
- Theme installer + switcher.
- Reference theme: wpc-hello (block theme).
- Reference theme: wpc-pro (classic theme).
- Theme SDK package per doc 03 §15.
Exit criteria: a third-party developer can build a theme by reading docs and the SDK alone.
Goal: the ecosystem-enabling layer. This is the riskiest phase.
- WASM runtime via wazero per doc 02 §4.
- Hook bus (actions + filters) per doc 02 §5.
- Host ABI: db, http.fetch, http.serve, kv, queue, cache.invalidate, email, audit.emit, secrets, cron per doc 02 §6.
- Frontend extension points (admin pages, custom blocks, dynamic blocks) per doc 02 §7.
- Plugin SDKs: Go (TinyGo), Rust, TypeScript (Javy).
- Plugin signing + manifest validation per doc 02 §10.
- Plugin marketplace MVP.
- Reference plugin: wpc-seo (sitemap, meta, schema.org).
- Reference plugin: wpc-forms (form builder + submissions).
- Reference plugin: wpc-shop (lightweight ecommerce + Stripe).
Exit criteria: a third-party developer can build and publish a signed plugin that adds a new feature without server access.
Goal: WordPress users can switch.
- WP importer per doc 08 — dbdirect, WXR, REST modes.
- HTML→block tree converter.
- Permalink redirects preserved.
- WP REST compat shim full coverage per doc 08 §11.
- Plugin replacement guide generator.
- phpass→argon2id password rehash on login.
- ACF field migration (best-effort).
- 10-site migration corpus + CI verification gate.
Exit criteria: take 10 typical WP sites, run them through the importer, and reach 95% content fidelity in the defined cohort (see proposal S15).
Goal: v1 release.
- Performance: meet the published SLOs in proposal S16.
- Docs site at docs.gonext.dev (or eventual brand domain) with 4 audiences: site owner, plugin author, theme author, API reference.
- Security audit by external firm.
- First-party marketing site running on GoNext itself.
- Marketplace launch with ≥10 community plugins/themes.
- Hosted SaaS beta (post-1.0; not required for v1 self-host release).
Exit criteria: see proposal S17. No date commitment.
Not on the v1 roadmap:
- Multisite / multi-tenancy
- Real-time collaborative editing (Yjs CRDT)
- Multi-region active-active
- Hosted SaaS (separate workstream after v1 self-host ships)
- WooCommerce-class ecommerce
- WPML-class multilingual
See doc 06 §17, doc 04 §10 for what's already designed in stubs.
- Open a
design-discussionissue. - Comment on phase milestones.
- Propose ADRs in
/adr.
Major reprioritization requires maintainer approval and a public ADR.