This is a monorepo template using:
- 📏 TypeScript 5.0
- ⚡️ Next.js 13.2
- ⚛️ React 18.2
- 🌬️ Tailwind CSS 3.3
- 📕 Storybook 7.0
- 🧪 Testing Library
- 🃏 Jest
- 🎭 Playwright
- 💡 Lighthouse
- 🧹 ESLint
- 🤖 CommitLint
- 💖 Prettier
- 📦 pnpm
- 🏎️ Turborepo
- 👷 Github Actions
This monorepo includes a few apps and packages.
apps/website-ssr
: a Next.js app with Tailwind CSSapps/website
: another Next.js app with Tailwind CSSpackages/ui
: a stub React component library with Tailwind CSS, shared by bothwebsite-ssr
andwebsite
appspackages/utils
: utilities shared by bothwebsite-ssr
andwebsite
appspackages/eslint-config-custom
: shared ESLint configurationpackages/jest-config
: shared Jest configurationpackages/lighthouse-config
: shared Lighthouse configurationpackages/next-config
: shared Next.js configurationpackages/playwright-config
: shared Playwright configurationpackages/storybook-config
: shared Storybook configurationpackages/tailwindcss-config
: shared Tailwind CSS configurationpackages/typescript-config
: sharedtsconfig.json
files
Run the following command:
git clone https://github.com/Developer-DAO/academy-turbo
cd academy-turbo
pnpm install
If you want to start apps/academy
in development mode, and watch for changes in packages/ui
, run at the root:
pnpm dev --filter academy
If you want to build apps/academy
for production, run at the root:
pnpm build --filter academy
If you want to see an analysis of the generated bundles, specify the ANALYZE
environment variable:
ANALYZE=true pnpm build
If you want to preview production builds of apps/website-ssr
and apps/website
, run at the root:
pnpm start
If you want to start all Storybook projects in development mode, run at the root:
pnpm storybook:dev
If you want to build all Storybook projects, run at the root:
pnpm storybook:build
If you want to run unit tests for all projects, run at the root:
pnpm test:unit
If you want to run e2e tests for all projects, run at the root:
pnpm test:e2e
If you want to run linting for all projects, run at the root:
pnpm lint