Contributing
Setup Dev Environment
To get the project running locally on your machine you need to have the following development tools installed:
-
Clone the project:
git clone https://github.com/formbricks/formbricks
and move into the directory
cd formbricks
-
Install Node.JS packages via pnpm. Don't have pnpm? Get it here
pnpm install
-
To make the process of installing a dev dependencies easier, we offer a
docker-compose.yml
with the following servers:- a
postgres
container and environment variables preset to reach it, - a
mailhog
container that acts as a mock SMTP server and shows received mails in a web UI (forwarded to your host'slocalhost:8025
)
docker-compose -f docker-compose.dev.yml up -d
- a
-
Create a
.env
file based on.env.example
. It's already preset to work with the docker-compose setup but you can also change values if needed.cp .env.example .env
-
Make sure your Docker containers are running. Then let prisma set up the database for you:
pnpm db:migrate:dev
-
Start the development server of the app:
pnpm dev --filter=web...
This only starts the Formbricks main app plus all its dependencies to save memory. If you want to start all apps at once, run
pnpm dev
instead.You can now access the app on http://localhost:3000. You will be automatically redirected to the login. To use your local installation of formbricks, create a new account.
For viewing the confirmation email and other emails the system sends you, you can access mailhog at http://localhost:8025
Build
To build all apps and packages and check for build errors, run the following command:
pnpm build