Bundled together in a monorepo using Turbo and pnpm.
.github
└─ workflows
└─ CI with pnpm cache setup
apps
├─ web (Astro)
| ├─ Astro v4
| ├─ Tailwind CSS
| └─ Payload CMS Local API
|─ cms (Payload CMS)
| └─ Payload CMS v2
└─ server (Express)
├─ Imports Astro as middleware
└─ Imports Payload CMS as middleware
web
: Astro app with Tailwind CSScms
: Payload CMSserver
: Express servereslint-config
:eslint
configurations (includeseslint-config-next
andeslint-config-prettier
) ESLint, Prettiertypescript-config
:tsconfig.json
s used throughout the monorepo TypeScriptde formatting
To build all apps and packages, run the following command:
pnpm build
To develop all apps and packages, run the following command:
pnpm dev
When deploying, you can use the --conditions
flag to serve the compiled dist
directory.
node --conditions=serve dist/index.js
Learn more about the power of Turborepo: