A Better Classification System for Action Shooting Sports
[!CAUTION] This README is possibly (most likely) OUTDATED. If you're a developer willing to contribute, join our Discord
For faster turn around when developing API, use: This starts up the app with a Mongo instance running in Docker.
npm i
npm run local
Populate the local database with production data by doing the following:
mongodump
archive (ask an existing contributor to provide you with the archive).zeta
folder to be at the root level of this repo.mongorestore
command:mongorestore --host localhost:27017 zeta -d test
NOTE: Before running this command, it is highly recommended to increase memory availability in Docker Desktop
to at least 5 or 6 GB.
Otherwise, the restore process may crash due to Docker's OOMKiller.
Note: You must supply MONGO_URL={URL_OF_SANDBOX_DATABASE}
to test in this manner.
npm i
npm start
Connect to the mongo instance via:
mongosh "mongodb://localhost:27017"
The Uploads Worker fetches matches and populates scores.
To run it locally, run the following:
ALGOLIA_URL='from_env' PS_S3_ACCESS_KEY_ID=from_env PS_S3_SECRET_ACCESS_KEY=from_env MONGO_URL=mongodb://localhost:27017 NODE_OPTIONS='--max-old-space-size=512' node scripts/uploadsWorker.js
You may need to tweak scheduling of the runner to run at more frequent intervals for testing purposes.
Currently deployed on Koyeb using Dockerfiles. To run api/web in prod mode, use:
npm i
npm run prod
Note: npm
i is required, because it uses vite build as a post-install step and serves frontend files from the node itself, instead of running two processes concurrently.
scripts/
-- standalone scriptsdata/
-- imported (partially processed / split) data, mostly used by backendshared/
-- source code imported by both front- and backendapi/
-- backendweb/
-- frontendFor more info, see READMEs in each root folder