Skip to content

Latest commit

 

History

History
82 lines (51 loc) · 1.85 KB

File metadata and controls

82 lines (51 loc) · 1.85 KB

Contribution Guide

Setting up the project

Nix Setup (With Flakes)

Pull down this project locally.

when you enter the directory if you have direnv installed run:

direnv allow

If you do not run

nix develop --impure

this will pull down all dependencies, install hooks and formatters etc.

Docker Setup

For those who prefer Docker, we've included a docker-compose.yml file to quickly set up a development environment with all required services.

  1. Make sure you have Docker and Docker Compose installed on your system.

  2. Start the development environment:

docker-compose up -d

This will start:

All services include health checks to ensure they're properly initialized before use.

  1. To stop the environment:
docker-compose down
  1. To view logs from the services:
docker-compose logs -f

Development with Nix

During development with the Nix setup, you will need to start a local elasticsearch instance. To start elasticsearch run:

just up

This will start process-compose and an elastic search instance.

You can now open a new terminal window and run tests using pest. For conviance purposes the nix shell has the command p linked to run ./vendor/bin/pest and pf linked to run ./vendor/bin/pest --filter "$@".

Development with Docker

When using the Docker setup, all required services are already running after executing docker-compose up -d. You can run tests directly against these services.

To run tests:

./vendor/bin/pest

To run a specific test:

./vendor/bin/pest --filter="test_name"

The Docker environment provides all necessary services configured with appropriate default settings for development and testing.