Development Setup
Get your development environment ready to contribute to LLPM.
Prerequisites
Before you begin, ensure you have the following installed:
- Bun runtime (latest version recommended) - the only required JavaScript runtime
- Git for version control
Note: Node.js is not required. LLPM uses Bun as its runtime.
Clone and Install
Fork and clone the repository
git clone https://github.com/YOUR_USERNAME/llpm.git cd llpmInstall dependencies
bun install
Environment Setup
Create a .env file in the project root with your API keys:
# At least one AI provider is required for testing
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GROQ_API_KEY=gsk_...
# GitHub integration (optional but recommended)
GITHUB_TOKEN=ghp_...Bun automatically loads environment variables from .env files.
Verify Setup
Run the test suite to ensure everything is working:
bun run testStart the application in development mode:
bun run startYou should see the LLPM welcome screen and prompt.
Development Scripts
| Script | Description |
|---|---|
bun run start | Start LLPM in development mode |
bun run test | Run the test suite once |
bun run test:watch | Run tests in watch mode |
bun run test:coverage | Run tests with coverage report |
bun run test:ui | Open Vitest UI |
bun run lint | Check for linting errors |
bun run lint:fix | Fix auto-fixable linting errors |
bun run typecheck | Run TypeScript type checking |
bun run format | Format code with Prettier |
Pre-commit Checklist
Before submitting a pull request, ensure:
- All tests pass:
bun run test - No linting errors:
bun run lint - Types check correctly:
bun run typecheck - Code is formatted:
bun run format - Coverage meets thresholds:
bun run test:coverage