Project Setup
Run the setup generator and understand exactly what it changes in your checkout.
Run pnpm turbo gen setup from an existing checkout to initialize Makerkit-specific metadata and Git defaults.
This guide is part of the Next.js Drizzle SaaS Kit installation.
Project Setup
Run the setup generator and review the resulting Git configuration.
What the setup generator does
The setup generator does not clone the repository for you. It assumes you already cloned the project and then:
- checks local requirements
- asks for your GitHub username
- asks for a project name
- writes a
makerkitblock into the rootpackage.json - can create a
.git/hooks/pre-commithook - rewrites the current
originremote toupstreamif the current remote is a GitHub URL - runs the Makerkit license script
Because it mutates Git configuration, run it once and inspect the result before continuing.
Run the generator
pnpm turbo gen setupIf you enable the optional health-check hook during setup, the generated pre-commit hook runs:
pnpm run lint:fixpnpm run typecheckpnpm run --filter scripts licenseIf you skip it, the hook only runs the license step.
Review your remotes
After setup, verify the final remote state:
git remote -vImportant:
- the generator may rename your current
originURL toupstream - it does not create a replacement
origin - if you work from a fork, add
originyourself after setup
Example:
git remote add origin git@github.com:<your-user>/<your-repo>.gitIf you plan to pull Makerkit updates, keep upstream pointed at the Makerkit source you cloned from and verify it before using git pull upstream main.
Optional manual setup
If you prefer not to run the generator, you can do the equivalent pieces manually:
- Set your Git identity.
- Add the
makerkitmetadata block topackage.jsonif you need it. - Create any Git remotes you want (
origin,upstream, or both). - Add your own pre-commit hook if desired.
Set your Git identity with:
git config user.name "<your-name>"git config user.email "<your-email>"Common Pitfalls
- Running
pnpm turbo gen setupbefore cloning the repo. It only works inside an existing checkout. - Assuming the generator preserves
origin. Checkgit remote -vafter it runs. - Assuming the pre-commit hook runs tests. It does not run
pnpm test:unit. - Forgetting to re-add
originif your workflow depends on pushing to a fork.
Next: Environment Variables →