StringSync is a web application that teaches people how to play guitar.
StringSync uses Docker and docker-compose
to run services locally. You will need this if you want to run StringSync locally.
StringSync uses yarn
as a package management solution. You will need this if you want to have TypeScript type definitions when updating the codebase.
Project dependencies can be installed by running the following command in the project directory:
yarn install
StringSync commands are run using the ./bin/ss
command.
To view all the commands, run:
./bin/ss
Before running the api for the first time, you will need to generate a secrets file (not tracked by .git):
./bin/ss gensecrets
The file it generates will have fake credentials, but this should be OK as long as you don't interact with dev AWS resources (such as uploading a file to AWS).
To run the api, start Docker engine and run:
./bin/ss dev
- http://localhost frontend UI
- http://localhost/altair backend GraphQL query playground
Press Ctrl + C to exit. The command should teardown the environment.
To teardown manually, run:
./bin/ss down
To run api tests in watch mode, run:
./bin/ss test:api WATCH=true
To run web tests in watch mode, run:
./bin/ss test:web WATCH=true