Formbricks Open source Forms & Surveys Logo

Contributing

Setup Dev Environment

To get the project running locally on your machine you need to have the following development tools installed:

  • Node.JS (we recommend v18)
  • pnpm
  • Docker (to run PostgreSQL / MailHog)
  1. Clone the project:

    git clone https://github.com/formbricks/formbricks
    

    and move into the directory

    cd formbricks
    
  2. Install Node.JS packages via pnpm. Don't have pnpm? Get it here

    pnpm install
    
  3. 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's localhost:8025)
    docker-compose -f docker-compose.dev.yml up -d
    
  4. 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
    
  5. Make sure your Docker containers are running. Then let prisma set up the database for you:

    pnpm db:migrate:dev
    
  6. 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
Was this page helpful?
Previous
Introduction

Need help? 🤓

Join our Discord and ask away. We're happy to help where we can!

Join Discord