Vyriy Preset - SSG
Calm cloud-ready static site generation application.
This repository is a Yarn workspace monorepo with a small SSG application and shared packages for reusable UI and service boundaries. The current rendering path fetches content from a replaceable CMS adapter, renders it through a server-safe React component, and writes a static HTML page.
Create this example
npm create vyriy@latest
Choose the ssg preset.
Workspace Layout
packages/
components/ Shared SSR-friendly React components.
services/ Replaceable server-safe service adapters.
workspaces/
ssg/ Static site generation workspace.
Rendering Flow
The SSG workspace renders a single static page:
@p/services/cmsreturns page content.@p/componentsrenders the content with thePagecomponent.@w/ssgwrites the generated document todist/ssg/static/index.html.
The generated HTML includes compiled component styles from
packages/components/page/styles.scss.
Development
Install dependencies with Yarn 4 and Node.js 24 or newer:
yarn install
Start the static generation workspace:
yarn start:ssg
Build the production SSG artifact:
yarn build:ssg
Run Storybook documentation:
yarn storybook
Validation
Run all checks:
yarn check
Run checks separately:
yarn lint
yarn build
yarn test
Focused Jest validation can target the main packages and workspace:
yarn jest workspaces/ssg packages/components packages/services --runInBand --coverage=false
Documentation
workspaces/ssg/README.mddocuments the SSG pipeline and output.packages/components/README.mddocuments shared React components.packages/services/README.mddocuments service adapters.
The matching doc.mdx files render these README files in Storybook.
Project Guidance
These articles describe the development approach behind this preset and provide practical guidance for evolving a project on top of it:
- Calm Development Environment: Node.js, Corepack, Yarn and Static Preview - how to keep the local development environment predictable and easy to reproduce.
- Calm App Structure for the Vyriy Ecosystem - a practical project structure for Vyriy applications: shared configs, small packages, thin workspaces, Storybook docs, tests, and deployable entry points.
- One Handler, Many Runtimes - how @vyriy/handler, @vyriy/router, and @vyriy/server compose a calm Lambda-compatible API that can run locally, in Docker, Fargate-style HTTP runtimes, and AWS Lambda.
- Storybook as Project Documentation - how to use Storybook as living project documentation and a component playground.