logo
Start HereQuickstart
Start Here

Quickstart

Bring up GrantMaster locally, verify Firebase emulators and health checks, and know what to read next as a new engineer.

Overview

Use this engineering quickstart to get GrantMaster running locally, verify the emulators, and orient yourself to the core architecture.

1. Confirm prerequisites and environment

Review environment setup

Start with the environment setup guide to confirm prerequisites, install dependencies, and configure required environment variables.

Read: Environment setup

2. Run the app locally

Start all services

Use the combined dev script to start Firebase emulators, seed data, and run the Vite dev server.

npm run dev:all

Wait until the command finishes booting and logs that emulators and Vite are running.

Reset local data if needed

If you need a clean local environment, run the fresh variant to clear emulator data before starting everything again.

npm run dev:all:fresh

Use this when local Firestore/Auth/Storage state gets out of sync with what you expect.

3. Verify emulators, ports, and health

Check emulator ports

Confirm that each service emulator is running on the expected port:

  • Vite app: http://localhost:3000
  • Emulator UI: http://localhost:4000
  • Firestore: localhost:8080
  • Auth: localhost:9099
  • Storage: localhost:9199
  • Functions: localhost:5001

Open the Emulator UI on port 4000 to inspect Firestore, Auth, Storage, and Functions state.

Run emulator health check

Use the health script to confirm all required emulators are reachable.

npm run health:emulators

A successful run reports that the emulators respond correctly. Investigate any failures before continuing.

4. Build a mental model

Read the architecture overview

Once your local environment is healthy, learn how the main services and data flows fit together.

Read: Architecture overview

Scan the glossary

Align on shared terminology so feature docs and code comments make sense on first read.

Read: Glossary

Next steps