A starter monorepo built with Turborepo, Nextjs, Docker, Typescript, Vitest and Tailwind.
This turborepo uses pnpm as a package manager. It includes the following packages:
@acme/ui
: A UI library built with React, Typescript, Tailwind and Vitest.@acme/ui-utils
: A utility library built with Typescript and React.@acme/utils
: A utility library built with Typescript.@acme/tailwind-config
: A Tailwind config library.
@acme/docs
: A documentation app built with Nextra.
next-app-play
: A Nextjs app playground.
pnpm i
pnpm dev --filter docs...
pnpm dev --filter next-app-play...
pnpm build --filter docs...
pnpm test lint type:check
The repo uses manypkg
manypkg check
runs all of the checks against your repo, logs any errors and exits with a code
manypkg fix
runs all of the checks against your repo and fixes any of problems that can be fixed.
pnpm manypkg check
# or
pnpm manypkg fix
The repo uses changesets
Once you decide you want to do a release, you can run
pnpm version
This consumes all changesets, and updates to the most appropriate semver version based on those changesets. It also writes changelog entries for each consumed changeset.
We recommend at this step reviewing both the changelog entries and the version changes for packages. Once you are confident that these are correct, and have made any necessary tweaks to changelogs, you can publish your packages:
pnpm release
This will run npm publish
in each package that is of a later version than the one currently listed on npm.