The Inception App was build as monorepo with Lerna.
All parts of the app are located in the packages
folder.
To set up the project, run
npm install
at the root of the project.
To add a new dependency to a specific package, run:
lerna add @material-ui/icons packages/client
Links local packages together, installs remaining package dependencies and starts a development server with parcel, which will automatically rebuild the apps as files change.
npm run start
firebase deploy --only functions
In order to emulate firebase hosting, firstore and functions locally run the following commands:
- Create credentials
- Set up firestore:
firebase init firestore
- Install emulator:
firebase setup:emulators:firestore
- Run emulator:
GOOGLE_APPLICATION_CREDENTIALS=path/to/credentials firebase emulators:start
orGOOGLE_APPLICATION_CREDENTIALS=path/to/credentials npm run emulate
See https://github.com/googlearchive/cloud-functions-emulator/wiki/Debugging-with-WebStorm
Links local packages together, installs remaining package dependencies and bundles all apps in production mode with parcel.
npm run build
Links local packages together, installs remaining package dependencies and runs tests with code coverage in the packages.
npm run test