Adventurous score card is a tool to allow users to check off tasks in order to show they have completed the task towards adventurous activities certification.
There are two basic users of this application. A person doing tasks and a guide or verifier who will verify the tasks are actually completed correctly.
The first screen will allow the user to sign onto the system. Once signed on the user is able to select an activity that they are signing off. Within each sign off there are groups of questions that can be checked off. Once you have checked them off you can dump the questions onto a PDF to share with a verifier.
When the verifier looks at the selected done activities they can approve things that they have seen the person doing. They can leave others unverified.
nx build score-card && firebase deploy
Back up Firestore before deployments, security role changes, and any bulk edit. The backup tool exports the app collections to JSON under backups/firestore/<project-id>/<timestamp>.json. The backups/ directory is ignored by git because it can contain private participant data.
Create a Firebase service account key for the project and keep it outside this repository, for example:
/Users/ken/source/firebase/adventurousscorecard.jsonRun a normal backup from the repository root:
npm run firebase:backup -- --credential /Users/ken/source/firebase/adventurousscorecard.jsonCreate a named export when you want to archive a specific point or restore it into a test project:
npm run firebase:export -- --credential /Users/ken/source/firebase/adventurousscorecard.json --output backups/manual/adventurousscorecard.jsonRestore into a test Firebase project first:
npm run firebase:import -- --credential /Users/ken/source/firebase/adventurousscorecard-test.json --input backups/manual/adventurousscorecard.json --target-project adventurousscorecard-testThe import overwrites documents in the export. It does not delete documents that only exist in the target unless --delete-missing is added. Use --delete-missing only on test projects unless a production restore has been planned and approved.
More options, including scheduled daily backups, are documented in Firestore JSON Backups.
✨ Your new, shiny Nx workspace is almost ready ✨.
Learn more about this workspace setup and its capabilities or run npx nx graph to visually explore what was created. Now, let's get you up to speed!
Click here to finish setting up your workspace!
To run the dev server for your app, use:
npx nx serve score-cardTo create a production bundle:
npx nx build score-cardTo see all available targets to run for a project, run:
npx nx show project score-cardThese targets are either inferred automatically or defined in the project.json or package.json files.
More about running tasks in the docs »
While you could add new projects to your workspace manually, you might want to leverage Nx plugins and their code generation feature.
Use the plugin's generator to create new projects.
To generate a new application, use:
npx nx g @nx/angular:app demoTo generate a new library, use:
npx nx g @nx/angular:lib mylibYou can use npx nx list to get a list of installed plugins. Then, run npx nx list <plugin-name> to learn about more specific capabilities of a particular plugin. Alternatively, install Nx Console to browse plugins and generators in your IDE.
Learn more about Nx plugins » | Browse the plugin registry »
Nx Console is an editor extension that enriches your developer experience. It lets you run tasks, generate code, and improves code autocompletion in your IDE. It is available for VSCode and IntelliJ.
Learn more:
- Learn more about this workspace setup
- Learn about Nx on CI
- Releasing Packages with Nx release
- What are Nx plugins?
And join the Nx community: