This is a template to build monorepo program in typescript edited from official starter Turborepo.
This Turborepo includes the following packages/apps:
docs
:a Next.js appa static website doc powered by Eleventyweb
: a Next.js appui
: a stub React component library shared by bothweb
anddocs
applicationseslint-config-custom
:eslint
configurations (includeseslint-config-next
andeslint-config-prettier
)tsconfig
:tsconfig.json
s used throughout the monorepo
Each package/app is 100% TypeScript.
This Turborepo has some additional tools already setup for you:
- TypeScript for static type checking
- ESLint for code linting
- Prettier for code formatting
And some other essential tools added to enforce code quality:
- Husky for git hooks
- lint-staged for linting staged files
- commitlint for commit message linting
- commitizen for commit message formatting
To commit, it is recommended to use
pnpm run commit
instead of git commit
. This will use commitizen
which will guide you to write a conventional commit message.
To build all apps and packages, run the following command:
pnpm build
To develop all apps and packages, run the following command:
pnpm dev
To generate the 11ty-powered doc, run the following command:
pnpm run doc
Learn more about the power of Turborepo: