Skip to content

Latest commit

 

History

History
129 lines (100 loc) · 4.3 KB

File metadata and controls

129 lines (100 loc) · 4.3 KB

Contributing Guidelines

Thank you for considering contributing to Open Code Chicago!
We welcome contributions of all skill levels.


Prerequisites

  • Node.js (v20 or later)
  • npm (comes with Node.js)
  • MongoDB (local or Atlas connection)

Local Setup Steps

  1. Set up your own MongoDB database
  • Use MongoDB Atlas (free tier) or run MongoDB locally.
  1. Copy environment variables
  • Copy .env.example to .env:
    cp .env.example .env
  • Fill in your own values for MONGODB_URI and other variables in .env.
  1. Seed the database
  • Run the seed script to populate your local database with sample data:
    npm run seed
  1. Start the development server
  • Run:
    npm run dev
  1. Lint your code before committing
  • Run:
    npm run lint

Before You Start

  • Please read our Code of Conduct
  • Review our Usage Guide to set up the backend locally
  • Check open issues for available work
  • Review our Project Board to see assigned tasks
    • Comment on a task you’d like to work on so a maintainer can assign it to you
    • This prevents duplicate work and keeps efforts coordinated

How to Contribute

  1. Fork the repository and create a new branch
    • Suggested naming: feature/your-feature, fix/your-bug
  2. Make your changes and commit with clear messages
  3. Open a Pull Request (PR) to the main branch
  4. Reference any related issues in your PR (e.g., Fixes #123)

Get Recognized with the All-Contributors Bot

We use the All Contributors Bot 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
    
  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!


Guidelines

  • Follow our Code of Conduct
  • 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

Dependencies & Packages

  • All dependencies are tracked in package.json.
  • Please do not install or commit new packages without prior discussion.
  • If you believe a new dependency is required:
    1. Open or comment on an issue describing why it’s needed.
    2. Wait for maintainer approval before adding it.
  • The node_modules folder should not be committed — it will be auto-generated by running npm install.
  • Always run npm install after cloning the repo to ensure your local environment matches the project.

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)

Getting Help

If you’re stuck or unsure:


⭐ 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. ❤️
Thank you for helping make Open Code Chicago better!