Contributing Guide
Thank you for your interest in contributing to OpenCodeHub! We welcome contributions from everyone.
π Local Development Setup
To contribute code, you need to set up the project locally.
Prerequisites
- Node.js: v18 or v20 (LTS).
- Bun: v1.0+ (Our package manager/runner).
- Docker: For running the database locally.
Step 1: Clone & Install
git clone https://github.com/swadhinbiswas/OpencodeHub.git
cd OpencodeHub
# Install dependencies (fast!)
bun install
Step 2: Database Setup
Start a local Postgres and Redis instance using Docker:
docker-compose up -d postgres redis
Copy the environment config:
cp .env.example .env
Note: The default .env.example is pre-configured to work with the docker-compose services.
Push the schema to the database:
bun db:push
Step 3: Run the App
Start the development server:
bun dev
Visit http://localhost:3000.
π§ͺ Running Tests
We use Vitest for unit tests. Use TDD!
# Run all tests
bun test
# Run specific test file
bun test user.test.ts
# Watch mode
bun test --watch
π¨ Code Style
We use ESLint and Prettier to enforce code style.
- Lint:
bun lint - Format:
bun format
Commit Messages
We follow the Conventional Commits specification.
feat: add new login pagefix: resolve crash on startupdocs: update troubleshooting guide
π Submitting a Pull Request
- Fork the repository.
- Create a feature branch:
git checkout -b feat/my-feature. - Commit your changes.
- Push to your fork.
- Open a Pull Request.
- Wait for CI checks to pass.
- A team member will review your code!
Thank you for helping build OpenCodeHub! β€οΈ