- Install Latest Docker
- Install Latest Node/npm
- Install AWS CLI v2
- Set up the git hooks.
bin/dev setup
- Grab the dev.env file from the notion secrets page and place it in the top level of your project.
- Install python dependencies in the container. (You will need to do this every time new python dependencies are added.)
bin/dev py-req
- Install Client dependencies. (You will need to do this every time new npm dependencies are added.)
bin/dev client-req
- Install pre-commit.
bin/dev sudo pre-commit install-hooks
sudo chown -R $(id -u):$(id -g) .pre-commit
- Start Containers and start the Flask web server
bin/dev backend
- Start the Client
bin/dev client
- Navigate to app: http://localhost:3000
- Run Backend Tests. All args are passed transparently to pytest
bin/dev run pytest [args]
- Run Client Tests.
bin/dev jstest [files]
- Run linters. (Runs full suite of linters on committed files - this is automatically done before
git push
and again by a github action during CI.)
bin/dev check
- Occasionally, newer versions of the devobx container will be made. Your invocation of
bin/dev backend
will likely pull it, but you can manually do so by running.
bin/dev pull
bin/dev run bash
rm /home/worker/app/.venv/bin/python3.8 &&
cp /usr/local/bin/python3.8 /home/worker/app/.venv/bin/python3.8 &&
ln -fs /home/worker/app/.venv/bin/python3.8 /home/worker/app/.venv/bin/python