We welcome contributions to VirtLang! This document outlines the guidelines for contributing to this project. By participating, you agree to abide by our community standards, which we are currently developing.
There are many ways to contribute to VirtLang, including:
- Reporting Bugs: Help us identify and fix issues by reporting bugs clearly and concisely.
- Suggesting Enhancements: Share your ideas for new features or improvements.
- Writing Code: Contribute new features, fix bugs, or improve existing code.
- Improving Documentation: Help us make our documentation clearer and more helpful (once we start building it).
- Testing: Help us ensure the stability and reliability of the project.
When reporting a bug, please include the following information:
- A clear and descriptive title for the issue.
- Steps to reproduce the bug as precisely as possible.
- Expected behavior and what actually happened.
- Your operating system and Go version (if relevant).
- Any relevant error messages or logs.
Please check the existing issues to avoid reporting duplicates.
If you have an idea for a new feature or improvement, please:
- Open a new issue with a clear and descriptive title.
- Explain the proposed enhancement in detail.
- Describe the potential benefits of the enhancement.
- Discuss any potential drawbacks or alternative approaches.
We encourage discussion and feedback on enhancement proposals.
If you'd like to contribute code, please follow these steps:
- Fork the repository on GitHub.
- Create a new branch from the
masterbranch. Name your branch descriptively (e.g.,feature/new-parser-rule,bugfix/lexer-issue). - Make your changes following the coding style and conventions used in the project.
- Write tests for your changes to ensure they work correctly and don't introduce regressions.
- Ensure all existing tests pass.
- Commit your changes with clear and concise commit messages. Try to be descriptive about what your commit changes.
- Push your branch to your forked repository.
- Open a pull request (PR) to the
masterbranch of the main repository.
When submitting a pull request, please:
- Give your pull request a clear and descriptive title.
- Provide a detailed description of the changes you've made and the problem they solve or the feature they implement.
- Reference any related issues (e.g., "Fixes #123", "Implements #456").
- Indicate if your changes introduce any breaking changes.
- Be prepared to address feedback and make revisions to your code.
Please try to adhere to the existing coding style of the project. This generally involves:
- Using consistent formatting (e.g., using
go fmtfor Go code). - Writing clear and readable code.
- Following Go's best practices and conventions (if applicable).
Thorough testing is crucial for ensuring the quality of the project. Please ensure that:
- Your changes are covered by appropriate unit tests.
- All existing tests pass before submitting a pull request.
- New tests are added for any new features or bug fixes.
We use GitHub issues and pull requests for communication related to the project. Feel free to ask questions or seek clarification in the relevant issues or PRs.
By contributing to VirtLang, you agree that your contributions will be licensed under the MIT License.
Thank you for your interest in contributing to VirtLang! Your help is greatly appreciated.