You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

3.2 KiB

Contributing to ORLY

Thank you for your interest in contributing to ORLY! This document outlines the process for reporting bugs, requesting features, and submitting contributions.

Canonical Repository: https://git.mleku.dev/mleku/next.orly.dev

Issue Reporting Policy

Before Opening an Issue

  1. Search existing issues to avoid duplicates
  2. Check the documentation in the repository
  3. Verify your version - run ./orly version and ensure you're on a recent release
  4. Review the CLAUDE.md file for configuration guidance

Bug Reports

Use the Bug Report template when reporting unexpected behavior. A good bug report includes:

  • Version information - exact ORLY version from ./orly version
  • Database backend - Badger, Neo4j, or WasmDB
  • Clear description - what happened vs. what you expected
  • Reproduction steps - detailed steps to trigger the bug
  • Logs - relevant log output (use ORLY_LOG_LEVEL=debug or trace)
  • Configuration - relevant environment variables (redact secrets)

Log Levels for Debugging

export ORLY_LOG_LEVEL=trace   # Most verbose
export ORLY_LOG_LEVEL=debug   # Development debugging
export ORLY_LOG_LEVEL=info    # Default

Feature Requests

Use the Feature Request template when suggesting new functionality. A good feature request includes:

  • Problem statement - what problem does this solve?
  • Proposed solution - specific description of desired behavior
  • Alternatives considered - workarounds you've tried
  • Related NIP - if this implements a Nostr protocol specification
  • Impact assessment - is this a minor tweak or major change?

Feature Categories

  • Protocol - NIP implementations and Nostr protocol features
  • Database - Storage backends, indexing, query optimization
  • Performance - Caching, SIMD operations, memory optimization
  • Policy - Access control, event filtering, validation
  • Web UI - Admin interface improvements
  • Operations - Deployment, monitoring, systemd integration

Code Contributions

Development Setup

# Clone the repository
git clone https://git.mleku.dev/mleku/next.orly.dev.git
cd next.orly.dev

# Build
CGO_ENABLED=0 go build -o orly

# Run tests
./scripts/test.sh

# Build with web UI
./scripts/update-embedded-web.sh

Pull Request Guidelines

  1. One feature/fix per PR - keep changes focused
  2. Write tests - for new functionality and bug fixes
  3. Follow existing patterns - match the code style of surrounding code
  4. Update documentation - if your change affects configuration or behavior
  5. Test your changes - run ./scripts/test.sh before submitting

Commit Message Format

Short summary (72 chars max, imperative mood)

- Bullet point describing change 1
- Bullet point describing change 2

Files modified:
- path/to/file1.go: Description of change
- path/to/file2.go: Description of change

Communication

License

By contributing to ORLY, you agree that your contributions will be licensed under the same license as the project.