Build and Contribute

Installing Crystal Language

To install Crystal Language, please refer to the official Crystal installation guide. The guide provides instructions for various operating systems and package managers.

Build & Testing

Clone and Install Dependencies

# If you've forked this repository, clone to https://github.com/<YOU>/noir
git clone https://github.com/hahwul/noir
cd noir
shards install

Build

shards build
# ./bin/noir

Unit/Functional Test

crystal spec

# Want more details?
crystal spec -v

Lint

crystal tool format
ameba --fix

# Ameba installation
# https://github.com/crystal-ameba/ameba#installation

or

rake lint:all

How to Contribute

We welcome contributions from the community. To contribute, follow these steps:

  1. Fork the repository: Click the “Fork” button at the top right of the repository page.
  2. Clone your fork:
    git clone https://github.com/your-username/noir.git
    cd noir
    
  3. Create a new branch:
    git checkout -b your-branch-name
    
  4. Make your changes: Implement your changes and commit them with a descriptive message.
  5. Push your changes:
    git push origin your-branch-name
    
  6. Create a Pull Request: Go to the original repository and click the “New Pull Request” button. Fill out the template and submit your pull request.

For more detailed guidelines, please refer to our CONTRIBUTING.md file.