How to Build

All contributions are welcome — bug fixes, features, and documentation improvements.

How to Contribute

  1. Fork the Noir repository
  2. Create branch:
    git checkout -b your-feature-name
    
  3. Make changes
  4. Commit with clear message
  5. Push to your fork:
    git push origin your-feature-name
    
  6. Open Pull Request with description

See CONTRIBUTING.md for detailed guidelines.

Development Setup

Installing Crystal

Noir is built with Crystal. Install it for your platform:

Ubuntu/Debian

curl -fsSL https://crystal-lang.org/install.sh | sudo bash

macOS (Homebrew)

brew install crystal

Other Platforms

See the official Crystal installation guide.

Building and Testing

git clone https://github.com/<YOUR-USERNAME>/noir
cd noir
shards install

Build:

shards build
# The binary will be located at ./bin/noir

Run tests:

crystal spec

# For more detailed output
crystal spec -v

Linting

Noir uses ameba for linting. Check for style issues:

bin/ameba.cr

Auto-fix:

bin/ameba.cr --fix

Or use just:

just fix
Esc