Guides
Development Guide
Welcome to the Arches development guide! This document covers everything you need to know to set up your development environment and contribute to the project.
Prerequisites
- Go 1.21 or later
- Node.js 18 or later
- PostgreSQL 15 or later (for development)
- Redis (for caching and sessions)
- Docker and Docker Compose (for containerized development)
Quick Setup
-
Clone the repository:
Code -
Install dependencies:
Code -
Generate code:
Code -
Set up the database:
Code -
Start development servers:
Code
Essential Commands
Code
For a complete list of commands, see Makefile Commands.
Project Structure
For a detailed overview of the project organization, see Project Layout.
Development Workflow
- Define First, Generate Second:
- Add x-codegen annotations to OpenAPI schemas
- Define database queries in SQL files
- Run
make generateto create all boilerplate code
- Implement Business Logic: Write your custom logic in
service.gofiles - Test with Generated Mocks: Use the generated
mocks_test.gen.gofiles for testing - Follow the testing strategy outlined in Testing Documentation
- Use the TUI for configuration as described in the TUI Guide
For detailed code generation instructions, see the Code Generation Guide.
Contributing
See our Contributing Guide for detailed information about:
- Code style and conventions
- Pull request process
- Issue reporting
- Development best practices
Architecture
Learn about the system design and patterns in our Architecture Documentation.
Need Help?
- Check the Troubleshooting Guide
- Open an issue on GitHub
Last modified on