academy-turbo
academy-turbo copied to clipboard
D_D Academy is an open-source education platform created by and for Developer DAO.
Next.js & Tailwind CSS Monorepo Template
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
What's inside?
This monorepo includes a few apps and packages.
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-ssrandwebsiteappspackages/utils: utilities shared by bothwebsite-ssrandwebsiteappspackages/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.jsonfiles
Using this template
Run the following command:
git clone https://github.com/Developer-DAO/academy-turbo
cd academy-turbo
pnpm install
Develop Next.js
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
Build Next.js
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
Preview Next.js
If you want to preview production builds of apps/website-ssr and apps/website, run at the root:
pnpm start
Develop Storybook
If you want to start all Storybook projects in development mode, run at the root:
pnpm storybook:dev
Develop Storybook
If you want to build all Storybook projects, run at the root:
pnpm storybook:build
Unit tests
If you want to run unit tests for all projects, run at the root:
pnpm test:unit
End-to-end tests
If you want to run e2e tests for all projects, run at the root:
pnpm test:e2e
Lint
If you want to run linting for all projects, run at the root:
pnpm lint