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 middlewareweb: Astro app with Tailwind CSScms: Payload CMSserver: Express servereslint-config:eslintconfigurations (includeseslint-config-nextandeslint-config-prettier) ESLint, Prettiertypescript-config:tsconfig.jsons used throughout the monorepo TypeScriptde formatting
To build all apps and packages, run the following command:
pnpm buildTo develop all apps and packages, run the following command:
pnpm devWhen deploying, you can use the --conditions flag to serve the compiled dist directory.
node --conditions=serve dist/index.jsLearn more about the power of Turborepo: