Ctrl K
ComunidadGuías…

CONTRIBUTING.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# Contributing to Lingo.dev

Thank you for contributing! We maintain high standards for code quality and design.

**IMPORTANT: Every requirement below is critical. If any requirement is not met, your issue or PR will be automatically rejected by the bots.**

## Before You Start

1. **Find or create an issue** - Search [existing issues](https://github.com/lingodotdev/lingo.dev/issues) first
2. **Wait to be assigned** - Comment on the issue and wait for assignment before starting work. Assignment priority:
   - First: Issue creator
   - Second: First volunteer commenter
   - **Submitting a PR without assignment will result in automatic rejection**
3. **Discuss approach** - Align on implementation details before coding

## Pull Request Requirements

### Must Have

- **Linked issue** - Reference the issue in your PR (e.g., "Closes #123")
- **Valid title** - Use [Conventional Commits](https://www.conventionalcommits.org/): `feat:`, `fix:`, `chore:`, etc.
- **Tests** - Unit tests for main code paths
- **Changeset** - Run `pnpm new` from repo root
- **Passing checks** - All CI checks must pass
- **Get assigned first** - Please raise PRs only after you're assigned to an issue first. If no issue exists, create one and get assigned to it before raising your PR.
- **Signed commits** - Please ensure that your commits are signed.

Failing these pre-requisites, your PR stands to be closed.

### Standards

- **Surgical PRs** - One clear objective per PR
- **Clean code** - Elegant, well-reasoned implementation
- **Meaningful changes** - No low-effort, cosmetic, or trivial edits made only to gain contributions
- **No duplicate work** - Check if someone else already opened a PR

## Local Development

### Prerequisites

- Node.js 18+
- pnpm (`npm install -g pnpm`)
- AI API key (Groq, Google, or Mistral) - [setup guide](https://lingo.dev/en/docs/cli/setup)

### Setup

```bash
git clone https://github.com/lingodotdev/lingo.dev
cd lingo.dev
pnpm install
pnpm turbo build
```

### Run Locally

```bash
# Terminal 1 - watch CLI changes
cd packages/cli
pnpm run dev

# Terminal 2 - test CLI
cd packages/cli
pnpm lingo.dev --help
```

### Run Checks

```bash
pnpm install --frozen-lockfile
pnpm turbo build --force
pnpm turbo test --force
pnpm changeset status --since origin/main
```

## Review Process

- Automated code review by AI bots provides suggestions
- Human reviewers make final decisions
- **Address maintainer comments promptly** - PRs with unaddressed comments will be closed to keep the repo clean. Feel free to recreate once issues are resolved.

Questions? Join our [Discord](https://lingo.dev/go/discord)!