Skip to content

Contributing to Zenoscript

Thank you for your interest in contributing to Zenoscript! This document provides guidelines and instructions for contributing to the project.

Code of Conduct

By participating in this project, you agree to abide by our Code of Conduct. Please read it before contributing.

How Can I Contribute?

There are many ways to contribute to Zenoscript:

Reporting Bugs

If you find a bug, please create an issue on our GitHub repository with the following information:

  • A clear, descriptive title
  • Steps to reproduce the issue
  • Expected behavior
  • Actual behavior
  • Any relevant code snippets or error messages
  • Your environment (OS, Bun version, etc.)

Suggesting Enhancements

We welcome suggestions for new features or improvements. Please create an issue with:

  • A clear, descriptive title
  • A detailed description of the proposed feature
  • Any relevant examples or use cases
  • If applicable, references to similar features in other languages

Documentation

Documentation is crucial for any programming language. You can help by:

  • Fixing typos or clarifying existing documentation
  • Adding examples to illustrate concepts
  • Writing tutorials or guides
  • Improving API documentation

Code Contributions

If you'd like to contribute code to Zenoscript, follow these steps:

  1. Fork the repository
  2. Create a new branch for your feature or bugfix
  3. Make your changes
  4. Add tests for your changes
  5. Ensure all tests pass
  6. Submit a pull request

Development Setup

To set up your development environment:

  1. Clone the repository:

    bash
    git clone https://github.com/wess/zenoscript.git
    cd zenoscript
  2. Install dependencies:

    bash
    bun install
  3. Build the project:

    bash
    bun run build
  4. Run tests:

    bash
    bun test

Project Structure

  • src/ - Source code for the Zenoscript compiler
  • examples/ - Example Zenoscript programs
  • tests/ - Test suite
  • site/ - Documentation website

Coding Guidelines

  • Follow the existing code style
  • Write clear, descriptive commit messages
  • Add comments for complex logic
  • Write tests for new features or bug fixes
  • Update documentation for API changes

Pull Request Process

  1. Update the README.md or documentation with details of changes if appropriate
  2. Update the tests if necessary
  3. The PR should work on all supported platforms
  4. Your PR will be reviewed by maintainers, who may request changes
  5. Once approved, your PR will be merged

Release Process

Zenoscript follows Semantic Versioning. The release process is handled by the core team.

Getting Help

If you need help with contributing:

  • Join our Discord server
  • Ask questions in GitHub Discussions
  • Reach out to the maintainers

Thank you for contributing to Zenoscript!

Released under the MIT License.