Thank you for your interest in contributing to Jolly! 🥳
We’re excited to have you on board. Contributions, whether big or small, are what make this project amazing. This document will help you get started.
- How Can I Contribute?
- Setting Up the Project
- Code Guidelines
- Submitting a Pull Request
- Communication
Found a bug? No worries! Here’s how you can report it:
- Open an issue on the GitHub issues page.
- Include the following details:
- Steps to reproduce the bug.
- Expected behavior vs. what happened.
- Relevant logs or error messages.
- Your environment (e.g., OS, Node.js version, Bun version).
Pro Tip: If you can include a minimal reproducible example, we’ll love you even more! ❤️
Got an idea that could make Jolly better? We’d love to hear it!
- Open a feature request on the GitHub issues page.
- Describe your idea and how it can improve the project.
- If possible, provide examples or mockups.
We welcome code contributions of all types:
- Fixing bugs 🐛
- Adding new features 🌟
- Improving documentation 📚
- Optimizing performance ⚡
Follow these steps to set up the project locally:
git clone https://github.com/kimmyxpow/jolly.git
cd jolly
We use Bun for development, so make sure you have it installed. If you don’t, install it here.
bun install
Make sure everything is working before you start contributing:
bun run test
To build the TypeScript source code into JavaScript:
bun run build
To maintain code quality and consistency, please follow these guidelines:
- Use Prettier for formatting. Run:
bun run format
- Follow TypeScript best practices:
- Use
strict
typing where possible. - Avoid using
any
.
- Use
- Write tests for any new features or bug fixes.
- Use the
tests/
folder to organize test cases. - Run the test suite to ensure your changes don’t break existing functionality:
bun run test
Use clear and concise commit messages. Follow this structure:
<type>(<scope>): <subject>
Examples:
fix(cli): handle invalid input gracefully
feat(compiler): add support for new keywords
docs: improve README.md
Keep new files organized under the correct folder:
src/core
: Compiler logic and core functionality.src/cli
: Command-line interface and related tools.tests
: Unit and integration tests.
When you’re ready to contribute your changes, follow these steps:
-
Fork the Repository
Create a fork of the repository to work on your changes. -
Create a Feature Branch
Use a descriptive branch name:git checkout -b feature/my-new-feature
-
Make Your Changes
Edit files and commit your changes:git add . git commit -m "feat(compiler): add support for new feature"
-
Push Your Changes
Push your branch to your fork:git push origin feature/my-new-feature
-
Open a Pull Request
Go to the repository’s GitHub page and open a Pull Request (PR).
Include a clear description of your changes and link any relevant issues.
Got questions? Need help? Reach out to us!
We’re happy to help and look forward to your contributions! 🥳
Your contributions make Jolly better for everyone. Thank you for being part of this fun and exciting journey! 🌟