Website Templates
Every Work generated by Ever® Works™ gets a dedicated website repository — a deployable site that displays the Work's content. The shape of that site is chosen at Work creation time from a set of base templates, each tuned for a different combination of stack (Next.js vs Astro), feature surface (directory-style vs general-purpose), and richness (full-featured vs minimal).
Template selection in the UI
When you create a new Work, the Website Template selector picks the base for
the website repository that gets cloned into your account. The default is
classic. You can change a Work's template later from
/works/:id/settings → Website template.
The chosen template's branch (configurable per template — main by default,
stage/develop for testing) is force-pushed into the new website repo,
then content placeholders are filled from your Work's data.
Template lookup, internally
The active template registry lives at
packages/agent/src/generators/website-generator/config/website-template.config.ts.
Each entry is a WebsiteTemplateConfig:
interface WebsiteTemplateConfig {
id: WebsiteTemplateId; // e.g. 'classic', 'minimal'
name: string; // display name
description: string;
owner: string; // GitHub org/user
repo: string; // Concrete repo name
branch: string; // Branch to clone from
syncBranches: string[]; // Branches kept in sync upstream
betaBranch?: string | null; // Optional beta branch
}
Templates the Works platform supports:
Available templates
1. classic — directory-web-template (Next.js, full-featured)
- Repo: ever-works/directory-web-template
- Stack: Next.js (App Router, React 19, Tailwind CSS)
- For: AI-generated directory-style websites with rich features — search, faceted filters, item detail pages, categories, tags, comparisons, community-PR submissions, etc.
- Status: ✅ Production-ready, default for new Works.
2. minimal — directory-web-minimal-template (Astro, minimal)
- Repo: ever-works/directory-web-minimal-template
- Stack: Astro 6 (static output, optional ISR via
@astrojs/vercel), Preact islands for interactivity, Tailwind CSS, TypeScript strict mode. - For: AI-generated directory-style websites with extreme performance
and minimum JavaScript — lightweight static-rendered alternative to the
Next.js
classictemplate. - Philosophy: Intentionally blank canvas with headless, composable building blocks. Plugin architecture — almost every feature is a plugin (SEO, pagination, filters, search, sort, sitemap, breadcrumbs, RSS, analytics, related items). No auth, no database, no payments by default — add as plugins when needed.
- Status: ✅ Available; opt-in by setting the
minimaltemplate id when creating a Work, or via the website-template selector in Work settings. - Enable in API: set the
WEBSITE_TEMPLATE_MINIMAL_REPOenv var todirectory-web-minimal-templateto register it inwebsite-template.config.ts.
3. web-template — generic Next.js (planned)
- Repo:
ever-works/web-template(planned, not yet published) - Stack: Next.js (same shape as
classic) - For: AI-generated general-purpose websites that aren't directories
— landing pages, marketing sites, content-heavy sites — with a similar
rich feature set to
directory-web-templateminus the directory-specific affordances (no item lists, no faceted filters by default). - Status: 🗓️ Planned. Once published it will register as
WebsiteTemplateId = 'web'(or similar) and ship a default branch + beta-branch contract identical to theclassictemplate.
4. web-minimal-template — generic Astro minimal (planned)
- Repo:
ever-works/web-minimal-template(planned, not yet published) - Stack: Astro (same shape as
directory-web-minimal-template) - For: AI-generated general-purpose websites with the same performance / static-output / plugin-driven philosophy as the minimal directory template — minus the directory-specific affordances.
- Status: 🗓️ Planned.
Roadmap
The four base templates above cover the matrix of (directory vs general)
× (full-featured Next.js vs minimal Astro). Beyond that, the platform is
designed to host many more templates — each new template is a
single-row addition to WEBSITE_TEMPLATES plus a published GitHub repo.
Anyone can author and contribute one; the only contract is that the repo's
branch layout matches WebsiteTemplateConfig (i.e. main and a sensible
default branch).
Related
- Website Generation — runtime pipeline that clones a template into a new website repo and keeps it in sync.
- Website Generator spec — detailed architectural spec.
- Custom domains — wiring a generated website to a user-owned domain.