diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 08c6827..0b55045 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,27 +1,98 @@ # Contributing Guidelines -Thank you for considering contributing to **Open Code Chicago**! -We welcome contributions of all skill levels. +Thank you for considering contributing to **Open Code Chicago**! +We welcome contributions of all skill levels. + +--- + +## Before You Start +- Please read our [Code of Conduct](./CODE_OF_CONDUCT.md) +- Check out the [Usage Guide](./docs/usage.md) to run the project locally +- Look at [open issues](https://github.com/OpenCodeChicago/hacktoberfest-2025-infra/issues) to see where you can help +- Review our [Project Board](https://github.com/orgs/OpenCodeChicago/projects/2) to see **available tasks** + - Comment on the task you’d like to work on so a maintainer can assign it to you + - This helps avoid duplicate work and keeps efforts coordinated + +--- ## How to Contribute -- Fork the repository and create a new branch -- Make your changes and commit with clear messages -- Open a Pull Request (PR) to the `main` branch -- Reference any related issues in your PR +1. **Fork** the repository +2. **Pick a task** from the [Project Board](https://github.com/orgs/OpenCodeChicago/projects/2) or from [open issues](https://github.com/OpenCodeChicago/hacktoberfest-2025-infra/issues) + - Comment to claim it before starting work +3. **Create a branch** for your work (e.g. `feature/awesome-feature` or `fix/typo`) +4. **Make your changes** and commit with clear, descriptive messages +5. **Open a Pull Request (PR)** to the `main` branch + - Reference any related issues (e.g. `Closes #123`) + - Keep PRs small and focused — easier to review and merge + +--- ## Guidelines -- Follow our [Code of Conduct](./CODE_OF_CONDUCT.md) -- Use clear, descriptive commit messages -- Keep PRs focused on a single change (small & clear) -- Write clean, well-documented code -- If possible, include tests for new features +- Use clear, descriptive commit messages +- Keep your PR focused on a single change +- Follow code style (Prettier config is included in the project) +- Run `npm run lint` before pushing +- Write clean, well-documented code +- Add/update tests if relevant + +--- + +## Dependencies & Packages +- All dependencies are tracked in `package.json`. +- Please **do not install or commit new packages** without first discussing in an issue or PR. +- If you believe a new dependency is required: + 1. Open or comment on an issue explaining why it’s needed. + 2. Wait for maintainer approval before adding it. +- The `node_modules` folder should **not** be committed — it is auto-generated by `npm install`. +- Always run `npm install` after cloning the repo to get the correct dependencies. + +--- + +## Get Recognized with the All-Contributors Bot +We use the [All Contributors Bot](https://allcontributors.org/docs/en/bot/usage) to recognize and celebrate all types of contributions. + +**How to add yourself:** +1. After your Pull Request is merged, comment on the PR or in a new issue with: + ``` + @all-contributors please add @your-github-username for code, doc, ideas + ``` + - Replace `@your-github-username` with your GitHub handle. + - List your contribution types (e.g., `code`, `doc`, `ideas`, `bug`, `review`). + - [See all contribution types here.](https://allcontributors.org/docs/en/emoji-key) + +2. The bot will create a Pull Request to add you to the contributors table in the README. +3. A maintainer will review and merge the bot’s PR. + +**Example:** +``` +@all-contributors please add @Alexandrbig1 for code, doc, maintenance, projectManagement +``` + +If you have questions, ask in your PR or open an issue! + +--- ## Issues -- Use issues to report bugs, request features, or ask questions -- Before opening a new issue, check if it already exists -- Tag issues with labels (e.g., `bug`, `enhancement`, `good first issue`) +- Use issues to report bugs, request features, or ask questions +- Before opening a new issue, check if it already exists +- Apply labels when possible (`bug`, `enhancement`, `good first issue`) + +--- ## Getting Help -If you’re stuck or unsure, feel free to reach out via our [Email](mailto:info@opencodechicago.org). +If you’re stuck or unsure: +- Ask in our [GitHub Discussions](https://github.com/orgs/OpenCodeChicago/discussions/2) +- Join our [Discord](https://discord.gg/t6MGsCqdFX) +- Or email us at [info@opencodechicago.org](mailto:info@opencodechicago.org) + +--- + +## ⭐ Support the Project + +If you find this project helpful or enjoy contributing, please consider giving us a ⭐ on GitHub! +Starring the repo helps increase its visibility, attracts more contributors, and makes your contributions more visible and valuable for your portfolio or employer. Thank you for supporting open source! + +--- -Every contribution matters — big or small. +Every contribution matters — big or small. ❤️ +Thank you for helping make Open Code Chicago better!