f19457337d481b61182555306d68d30464259507
- Add @payloadcms/sdk + @unom/cms (typed Config) to deps - .npmrc maps @unom to git.unom.io/api/packages/unom/npm/ - Rewrite src/lib/cms.ts: PayloadSDK<Config> client + typed helpers (findPageBySlug, findPostBySlug, findPosts, findFooter, findHeader) - Re-export the structural types (Page, Post, Footer, Header) plus the legacy aliases (RichTextBlock, LexRoot/LexNode, NavigationSection, NavigationLink) so existing components keep compiling - Dockerfile mounts /root/.npmrc as a build secret so bun install can pull @unom/cms from the private gitea registry - deploy.yml stages an .npmrc with REGISTRY_TOKEN auth + passes it as the 'npmrc' build secret - Add blog routes: /blog (list) + /blog/ (detail), PostCard, all reading from the CMS via the SDK - Fix two pre-existing TS errors (@fontsource/inter import, server.tsx return type)
@unom/website
The unom.io marketing site. TanStack Start + Bun, deployed to home-main-2.
Development
bun install
bun run dev
Visit http://localhost:3000.
Production
The repo is built into a container image (git.unom.io/unom/website) by Gitea
Actions on push to main, then deployed via SSH to home-main-2. The
container listens on port 3000 inside the network and is exposed on host port
3200, which Caddy on home-reverse-proxy-1 reverse-proxies for unom.io and
www.unom.io.
Run the production image locally:
docker compose -f compose.production.yml pull
docker compose -f compose.production.yml up -d
Required CI secrets
Set on the unom/website repo in Gitea Actions:
| Secret | Purpose |
|---|---|
REGISTRY_USER / REGISTRY_TOKEN |
Push to git.unom.io container registry |
DEPLOY_HOST / DEPLOY_USER / DEPLOY_PORT / DEPLOY_SSH_KEY |
SSH target on home-main-2 (private key matching the unom-ci-deploy authorized key) |
Description
Languages
TypeScript
80%
CSS
17.5%
Dockerfile
2.5%