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:
- Fork the repository
- Create a new branch for your feature or bugfix
- Make your changes
- Add tests for your changes
- Ensure all tests pass
- Submit a pull request
Development Setup
To set up your development environment:
Clone the repository:
bashgit clone https://github.com/wess/zenoscript.git cd zenoscriptInstall dependencies:
bashbun installBuild the project:
bashbun run buildRun tests:
bashbun test
Project Structure
src/- Source code for the Zenoscript compilerexamples/- Example Zenoscript programstests/- Test suitesite/- 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
- Update the README.md or documentation with details of changes if appropriate
- Update the tests if necessary
- The PR should work on all supported platforms
- Your PR will be reviewed by maintainers, who may request changes
- 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!