Space EdVentures center participant tracker.
Space Edventures is a point tracking system for participants of the Space Edventures centers, primarily located in Utah.
The App is built with a React (create-react-app) frontend and a Firebase backend.
git clone https://github.com/alexanderson1993/space-edventures.git
cd space-edventures
npm install
npm start
There are several other packages used on the frontend:
arwes
design systememotion
for styling@reach/router
for routingThe Layout is handled by several components in the Layout folder. Generic
helpers that are used throughout the app are stored in the /src/helpers
folder. Generic components that are used in multiple places in the app are
stored in the /src/components
folder, and exported in the index.js
file,
making them easily accessible. Generic styled components created with emotion
are also included in this folder.
Main routes are configured in the /src/routes.js
file. Sub-routes are
configured in the /src/pages/index.js
file.
It uses several different packages for CI/CD:
jest
for testingeslint
for lintingprettier
for automatic formattingThe app is deployed on Firebase. DNS and additional services are provided by Cloudflare.
The CI process runs for every commit and pull request, to validate that the tests are passing and the code meets standards. In addition, an automated process validates the code locally whenever there is a commit.
When changes are merged into the master branch, CI automatically validates, and then deploys both the app and the Firebase functions.