* create quest handler * Updating action schema and removing backend-only insert permissions * Better handle auth bearer token * Basic tests for creating quests * Check if player has > 100 pSEED to allow creating a quest * move quests actions into its own router * create quest completion * updateCompletion handler * update types * Improving handler input types * Improve types and logic * Removing types file and using autogenerated ones * Reject other submissions when accepting a unique quest completion * Fix linting errors * Fix CreateQuestCompletionInput maybe * error messages * Puttin pSEED contractnaddress in config file Co-authored-by: Hammad Jutt <jutt@ualberta.ca>
The Game
Monorepo for the MetaGame applications, backend and databases.
Project Board to find tasks / issues to work on: https://github.com/MetaFam/TheGame/projects/1
Guides
If you're new to the MetaGame codebase, check out the following guides to learn how to contribute.
Development
Bootstrap
Create your local .env file
cp .env.sample .env
Install Packages
yarn
Initial TS Compilation For Monorepo Packages
yarn typecheck
Run services
Start backend services
yarn docker:start
- Runs docker containers for backend, Hasura Engine, and PostGres database
- will auto-restart on any changes to
packages/backendandpackages/utils
If you are running for the first time on an empty database, once the services are running you can run the following command to populate the database with the initial dataset:
curl -X POST http://localhost:4000/actions/migrateSourceCredAccounts
Stop backend services
yarn docker:stop
- Stops all the containers
If you want to locally start the backend server (not in Docker) for debugging purposes:
yarn backend:dev
Run NextJS Web App dev mode (new)
yarn web:dev
Tooling
Start Hasura console
yarn hasura:console
Hasura CLI example
yarn hasura migrate status
yarn hasura migrate squash --name "<feature-name>" --from 1598417879553
yarn hasura migrate apply --version "<squash-migration-version>" --skip-execution
Hasura CLI documentation Hasura Migrations Guide
Generate GraphQL Types
yarn generate
Reload Schema + Generate GraphQL Types (backend needs to be running)
yarn update-schema
yarn generate
Restart with fresh database
yarn docker:clean
yarn docker:start
Run typechecks
yarn typecheck