-
Install Node.js
-
Install and enable Prettier in VSCode
-
Install MongoDB Community Server to host a local instance of MongoDB. It may also be helpful to download MongoDB Compass to view the state of your database.
-
Get a locally running MongoDB instance.
Install Docker.
Then, to host the instance, you can use the command:
docker-compose up -d
To stop your Docker containers and remove their processes, run:
docker-compose down
Note: On linux-based operating systems, if you come across an entrypoint permission error (i.e.
process: exec: "./scripts/env-init.sh": permission denied: unknown
orprocess: exec: "./scripts/rs-init.sh": permission denied: unknown
), runchmod +x ./scripts/rs-init.sh
orchmod +x ./web/scripts/env-init.sh
to make the shell files executables.Windows Users: If you come across this error
exec ./scripts/rs-init.sh: no such file or directory
orexec ./scripts/env-init.sh: no such file or directory
when running the docker-compose command, please follow this Stackoverflow thread to fix it. -
In the root directory of the project, run:
npm install
-
In the root directory, run one of these commands based on your OS:
npm run secrets:linux # mac / linux npm run secrets:windows # windows
You should be prompted for a master password. Ask your Engineering leadership to continue. Once the password has been verified, your
.env
file should have been created automatically for you.If you are unable to use the commands to retrieve the
.env
file, you can download or visit Bitwarden and login usingproduct@bitsofgood.org
and the master password. The.env
file will be available within the vault. -
To start the Next.js dev server, run:
npm run dev
-
Navigate to http://localhost:3000/ to view the application.
- Next.js (frontend + backend)
- Tailwind CSS (styling)
- MongoDB (database)
- Zod (type validation)
- Salesforce (auth + account integration)