Files
sonobarr/CONTRIBUTING.md
Beda Schmid 152f450a90 Adds contributing guide and changelog
Adds a contributing guide with instructions for setting up a local development environment using Docker.

Also creates a changelog to track notable changes.

### Added
- Contributing guide for local development setup.
- Changelog file.
2025-10-08 10:46:25 -03:00

36 lines
1.5 KiB
Markdown

# Contributing
1. Clone the repository.
2. Checkout the `develop` branch: `git checkout develop`.
3. **Create** a `docker-compose.override.yml` with the following contents:
```yaml
services:
sonobarr:
build:
context: .
dockerfile: Dockerfile
network: host
image: sonobarr-local
volumes:
- ./config:/sonobarr/config
- /etc/localtime:/etc/localtime:ro
- ./src:/sonobarr/src
#ports:
# - "5000:5000"
networks:
npm_proxy:
ipv4_address: 192.168.97.23 #change as you need
networks:
npm_proxy:
external: true
```
4. Build the image with `sudo docker compose up -d` - later this will re-use the local image.
5. Make code changes in `src/` or other required files.
6. Test the changes by restarting the docker image `sudo docker compose down && sudo docker compose up -d` and clearing cache in browser.
7. Once ready to commit, make sure the build still works as well `sudo docker compose down -v --remove-orphans && sudo docker system prune -a --volumes -f && sudo docker compose up -d`.
8. Commit your work to the `develop` branch.
**Always test your changes with at least two accounts - admin and a common user - in the app, in at least two distinct browser builds (such as safari and chrome, for example).**
**Remember that if you made changes affecting config (that is, database or configuration) you have to delete the `./config` folder before rebuilding or restarting the app.