Skip to content

Contributing

Thank you for your interest in contributing to Pumbaa! โค


๐Ÿ”ง Development Setup

Prerequisites

  • Go 1.21+
  • Make

Build

git clone https://github.com/lmtani/pumbaa
cd pumbaa
make build

Binary Location

./dist/pumbaa

Run

./dist/pumbaa --help

๐Ÿงช Testing

make test

๐Ÿ“ Project Structure

pumbaa/
โ”œโ”€โ”€ cmd/cli/            # CLI entry point
โ”œโ”€โ”€ internal/
โ”‚   โ”œโ”€โ”€ application/    # Use cases
โ”‚   โ”œโ”€โ”€ container/      # Dependency injection
โ”‚   โ”œโ”€โ”€ domain/         # Domain entities
โ”‚   โ”œโ”€โ”€ infrastructure/ # External integrations (Cromwell, LLM, etc.)
โ”‚   โ””โ”€โ”€ interfaces/     # CLI & TUI handlers
โ””โ”€โ”€ pkg/wdl/            # WDL parser (ANTLR)

๐Ÿš€ Pull Requests

  1. ๐Ÿด Fork the repository
  2. ๐ŸŒฑ Create a feature branch
  3. ๐Ÿ“ Make your changes
  4. โœ… Run tests: make test
  5. ๐Ÿ“ฅ Submit PR

๐Ÿ› Reporting Bugs

Found a bug? Open an issue

Please include:

  • A clear, descriptive title
  • Steps to reproduce the issue
  • Expected vs actual behavior
  • Your environment (OS, Cromwell version, pumbaa version)
  • Relevant logs or error messages

๐Ÿ’ก Requesting Features

Have an idea? Open a feature request

Please include:

  • A clear description of the feature
  • Why it would be useful
  • Any examples or mockups if applicable

All contributions welcome!

All contributions and feedback are welcome! Please ensure issues include enough details for us to investigate or implement your request.