Developing & Contributing
Follow these instructions if you want to contribute to the project or build from source.Prerequisites
- Go: 1.24 or later
- Node.js: 22.x or later
- pnpm: 9.x or later
- Air: For backend hot-reloading
- Docker: For running local infrastructure
Initial Setup
-
Clone the repository:
-
Install Frontend Dependencies:
-
Download Backend Dependencies:
-
Start Development Infrastructure:
This will spin up the required databases (Postgres, ClickHouse, MinIO) in the background.
Running for Development
Run the backend and frontend in separate terminals.-
Backend:
-
Frontend:
Project Structure
cmd/lite: Main entry point and CLI configuration.internal/: Application logic, API handlers, and services.pkg/: Reusable packages for storage, logging, and caching.web/: Frontend React application.deployments/: Docker Compose and deployment configurations.migrate/: PostgreSQL schema migrations.build/: Dockerfile and build scripts.
Contributing Guidelines
- Branching: Use descriptive branch names (
feature/*,fix/*). - Formatting: Use
go fmtandpnpm lint. - Commits: Provide clear, professional messages.
- Pull Requests: Provide a detailed description of changes.
.png?fit=max&auto=format&n=tUtwuHgibAuVylZ9&q=85&s=44653a825fa0664047dae92cd8969b2d)
