Skip to content

Latest commit

Β 

History

History
91 lines (64 loc) Β· 2.4 KB

File metadata and controls

91 lines (64 loc) Β· 2.4 KB

🀝 Contributing to Pandino

We welcome contributions! Here's how to get started quickly.

πŸš€ Quick Setup

# Clone and setup
git clone https://github.com/BlackBeltTechnology/pandino.git
cd pandino
pnpm install

# Build all packages
pnpm build

# Run tests
pnpm test

πŸ“‹ Development Workflow

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes following our coding standards
  4. Test your changes: pnpm test
  5. Commit with conventional commits: feat: add amazing feature
  6. Push and create a Pull Request

🎯 What We Accept

Type Examples
πŸ› Bug fixes Fix service registration race conditions
✨ Features New built-in services, bundle lifecycle improvements
πŸ“š Documentation README improvements, code examples
πŸ”§ Tooling Build improvements, test utilities
⚑ Performance Bundle startup optimizations

πŸ“ Coding Standards

  • Tests required - New features need unit tests
  • Conventional commits - Use feat:, fix:, docs:, etc.
  • Code linter - We use OXC (runs automatically)
  • Code formatting - We use Biome (runs automatically)

πŸ§ͺ Testing

# Run all tests
pnpm test

# Run tests in watch mode
pnpm test:watch

# Run tests with coverage
pnpm test:coverage

# Test specific package
pnpm --filter @pandino/pandino test

πŸ“¦ Project Structure

packages/
β”œβ”€β”€ pandino/          # Core framework
β”œβ”€β”€ react-hooks/      # React integration
└── example/          # Demo application

πŸ› Bug Reports

Include:

  • Environment - Node.js version, OS, package versions
  • Steps to reproduce - Minimal code example
  • Expected vs actual behavior
  • Error messages - Full stack traces

πŸ’¬ Questions?

πŸ“„ License

By contributing, you agree your contributions will be licensed under the Eclipse Public License - v 2.0.


Thanks for making Pandino better! πŸŽ‰