This is mostly a TypeScript monorepo setup, meaning that multiple "packages" are hosted and interlinked within this one repository.
Repository setup:
packages/api
: the common API type definitionsfirebase
: the web app, deployed using Firebase Hostingpackages/firebase-functions
: backend functions, deployed using Firebase Functions
- Request access to Firebase from a project owner.
- Make sure you have
node
,git
, andgit lfs
are installed. - Check out the repo.
- Run
npm install -g pnpm
to install the PNPM package manager. - Run
pnpm install
to download the dependencies of the project. - Run
pnpx firebase login
to log into Firebase.
- Make sure that the project dependencies are installed and that the development environment is set up (see instructions above).
- Run
pnpm build
to build all packages. - Change into the
firebase
directory and runpnpm dev
to run the development server locally. The local server should open an instance of the app in your default browser. - Try modifying something in the code and saving the changes. The app should update its components without having to refresh the page.