Requirements

Learn about the requirements for using the starter kit.

Tools

Make sure you have the following tools installed on your machine:

Pnpm & Workspaces

Workspaces are the building blocks of your monorepo. Each app and package you add will reside in its own workspace.

We chose pnpm because it supports workspaces well and is a fast, efficient package manager that saves disk space by using hard links and symlinks.

Docker

Docker is optional but highly recommended for local development as it lets you run the database in a container. This saves you time and avoids installing a database on your local machine.

While some people prefer to use a remote database on the cloud (such as AWS, GCP, or Azure) for local development, this approach can be costly in terms of credits and money.

We've already configured a docker-compose file to set up a PostgreSQL database for you. All you need to do is run a simple command to install and start the database. We'll cover this in another section.

Stripe CLI

Stripe CLI is used to to test your Stripe webhooks locally.

VS Code Extensions

We recommend using Visual Studio Code as your code editor. It's lightweight, fast, and has a great ecosystem of extensions.

Here are a few suggested extensions to enhance your developer experience with the starter kit.

git-cz

git-cz is optional but recommended for writing conventional commit messages. It helps you write better commit messages that are easy to understand and follow the conventional commit standard.

Another benefit is that we get a consistent commit message format across the team, which makes it easier to understand what changes were made in a commit and looks cleaner in the git commit log.

Since we use Husky and Commitlint to enforce conventional commits, it's a good idea to use git-cz to help you write better commit messages.

git commit history

Commit message format without git-cz

If you don't want to install git-cz, your commit messages should follow the conventional commit standard.

❌ Not valid.

git commit -m "add profile page"

✅ Valid.

git commit -m "feat: add profile page"

Install git-cz

pnpm i -g git-cz

You might need to install commitizen globally as well.

pnpm i -g commitizen

Usage

Now instead of git commit -m "feat: add profile page", you can use:

cz

or

git cz

This will open an interactive CLI to help you write better commit messages.

Last updated on