Getting started

Follow the steps below to get a local development environment running.

  1. Install Task.

  2. Install Docker.

  3. Install dependencies (Atlas, uv, Python dependencies) by running:

    task install-dependencies
    
  4. Run the unit tests:

    task test
    
  5. Obtain the OIDC development client secret from a teammate and add it to your .env file:

    echo GOOGLE_OIDC_CLIENT_SECRET=... >> .env
    
  6. Get familiar with the task runner. Most of the commands you will run are defined in Taskfile.yml. Run:

    task --list
    
  7. Start the dev server:

    task start
    

    This will start the server at http://localhost:8000. It stores its state in a local Postgres instance, running in Docker, on localhost:5499.

  8. If you are only working on the UI, you can skip the rest of the instructions.

  9. Visit the local interactive OpenAPI docs page: http://localhost:8000/docs

  10. Now set up the pre-commit hooks in your local git with:

    uv run pre-commit install
    

Note

Our system uses Google logins for SSO. If you do not have an @agency.fund Google login, run the following command to allow yourself access to the UI:

task create-user