Skip to content

Commit 75847fb

Browse files
committed
docs: add CONTRIBUTING.md to guide new contributors
1 parent e15e887 commit 75847fb

1 file changed

Lines changed: 70 additions & 0 deletions

File tree

CONTRIBUTING.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# Contributing to LayerZero
2+
3+
Thanks for checking out LayerZero! This is an actively maintained personal project, and contributions, bug reports, and suggestions are welcome.
4+
5+
## Tech Stack
6+
7+
Before diving in, make sure you're familiar with:
8+
- **Backend:** Node.js / Express (TypeScript)
9+
- **Caching:** Redis (via Upstash)
10+
- **Deployment:** Docker + GitHub Actions CI/CD, AWS EC2
11+
- **Frontend:** Cloudflare Workers
12+
- **AI Models:** Gemini, Cerebras GPT-OSS-120B, Gemma, Sarvam 30B (routed via a shared model interface)
13+
14+
## Getting Started
15+
16+
1. Fork the repo and clone your fork:
17+
```bash
18+
git clone https://github.com/<your-username>/layerzero.git
19+
cd layerzero
20+
```
21+
2. Install dependencies:
22+
```bash
23+
npm install
24+
```
25+
3. Copy the example env file and fill in your own API keys:
26+
```bash
27+
cp .env.example .env
28+
```
29+
4. Run locally:
30+
```bash
31+
npm run dev
32+
```
33+
34+
If you're using Docker instead:
35+
```bash
36+
docker compose up --build
37+
```
38+
39+
## Making Changes
40+
41+
1. Create a new branch off `main`:
42+
```bash
43+
git checkout -b fix/short-description
44+
```
45+
2. Keep changes focused — one fix or feature per PR makes review much faster.
46+
3. Match the existing code style (TypeScript strict mode, existing naming conventions).
47+
4. Test your changes locally before opening a PR. If you're touching model routing, caching, or the ingestion pipeline, please note what you tested manually in the PR description (automated test coverage is still a work in progress).
48+
49+
## Submitting a Pull Request
50+
51+
1. Push your branch and open a PR against `main`.
52+
2. In the PR description, include:
53+
- What the change does and why
54+
- Any relevant screenshots/logs if it's a bug fix
55+
- Whether it touches deployment config (Dockerfile, GitHub Actions workflows) — these get extra scrutiny since they affect the live EC2 deployment
56+
3. Be responsive to review comments — this is a small project maintained solo, so turnaround might take a few days.
57+
58+
## Reporting Bugs / Suggesting Features
59+
60+
Open an issue with:
61+
- **Bugs:** steps to reproduce, expected vs actual behavior, relevant logs
62+
- **Features:** what problem it solves, and if possible, a rough idea of implementation
63+
64+
## Code of Conduct
65+
66+
Be respectful, be constructive. This is a learning project as much as anything else — good-faith questions and beginner contributions are just as welcome as advanced ones.
67+
68+
## Questions?
69+
70+
Open an issue or start a discussion — happy to help you get oriented in the codebase.

0 commit comments

Comments
 (0)