Contributing
Contributions are welcome! This document outlines the process for setting up your development environment and submitting changes.
Development Environment
- Go: Version 1.21 or higher.
- Make: For running build scripts.
- golangci-lint: For linting code.
Build Commands
The project uses a Makefile for common tasks:
make all: Build both server and client.make juicity-server: Build only the server.make juicity-client: Build only the client.
Code Quality
We use golangci-lint to ensure code quality. A configuration file .golangci.yml is provided in the root.
Additionally, pre-commit hooks are available in .pre-commit-config.yaml to enforce standards before you commit:
- Install pre-commit.
- Run
pre-commit install.
Submitting a Pull Request
- Fork the repository.
- Create a feature branch.
- Ensure all tests pass and linters are happy.
- Submit a Pull Request describing your changes.