Skip to content

Latest commit

Β 

History

History
187 lines (126 loc) Β· 5.74 KB

File metadata and controls

187 lines (126 loc) Β· 5.74 KB

🀝 Contributing to NeoNest

Thank you for your interest in contributing to NeoNest – your time and effort mean a lot to us! πŸ’œ Whether you're reporting a bug, suggesting an enhancement, or writing your first pull request – you're welcome here. Let’s build a supportive space for contributors of all experience levels. πŸš€


πŸ“Œ Table of Contents


πŸ“‹ How to Contribute

🐞 Bug Reports

  • Open a new issue using the bug label.
  • Include a clear title, a concise description, and the file name/line number if possible.
  • Mention expected behavior vs actual behavior.
  • Provide steps to reproduce the issue.
  • Add screenshots or screen recordings to help us understand better.

🌟 Feature Requests / Docs Improvements

  • Open a new issue using the feature or docs label.
  • Describe what you’re proposing and why it matters.
  • Include UI mockups, screenshots, or API flow diagrams, if applicable.
  • Keep ideas beginner-friendly and scalable.

πŸ§‘β€πŸ’» Code Contributions (Pull Requests)

Here’s a quick overview of the contribution flow:

πŸ” Contribution Workflow

  1. Star and Fork the repo.

  2. Clone your fork:

git clone https://github.com/AditiGupta-tech/NeoNest.git
  1. Install dependencies:
npm install --legacy-peer-deps
  1. Create a new branch:
git checkout -b yourname/feature-name
  1. Make your changes:
  • Stick to the project structure.
  • Use helpful commit messages, eg:
  • fix: corrected typo in LandingPage.jsx
  • feat: added baby sleep graph comparison
  1. Format your code:
npm run lint
  1. Update pnpm-lock.yaml file using this command and push along with other commits:
pnpm install
  1. Test everything! (Manual/automated if applicable)

  2. Push your branch:

git push origin yourname/feature-name
  1. Open a Pull Request (PR) from your fork:
  • Reference related issue(s): Fixes #<issue-number>
  • Add a clear title and summary.

🧠 Code Style Guidelines

To ensure consistency and maintainability, please adhere to these guidelines:

  • Use camelCase for variables and function names.
  • Component files should be PascalCase: SleepTracker.jsx.
  • Run npm run lint to follow our ESLint + Prettier rules.
  • Keep functions modular and reusable.
  • Use descriptive variable names (sleepDuration > temp123).
  • Avoid hardcoded values – use constants/configs where possible.

πŸ“ File Naming Conventions

  • 🧩 React Components: PascalCase (BabyStats.jsx)
  • πŸ“‚ Folders: kebab-case (/baby-data, /user-profile)
  • πŸ–Ό Images/GIFs: kebab-case and descriptive (baby-growth-graph.gif)
  • πŸ“„ Markdown/Docs: kebab-case (getting-started.md, api-reference.md)

βœ… PR Review Process

We aim to keep things smooth and transparent:

  • Once your PR is submitted, a maintainer will review it.
  • You may be asked to:
  • Fix styling issues.
  • Add missing documentation/tests.
  • Break large PRs into smaller pieces.
  • After approval:
  • Your PR will be merged with a squash merge to keep history clean.
  • Points will be awarded if part of GSSoC.
  • You’ll receive feedback, even if the PR isn’t merged immediately.
  • βŒ› Reviews may take 24–72 hours depending on activity. Thanks for your patience!

πŸ’¬ Community & Communication

We’re friendly and open – come say hi! πŸ‘‹

Whether you’re stuck or want to share an idea, reach out through:

πŸ§‘β€πŸ« Mentorship & pairing sessions are available – just ask!


πŸ“ Contribution Rules

To ensure a smooth and fair contribution process:

  • Always Star and Fork before contributing.
  • Browse open issues and comment to get assigned.
  • One PR per issue – stay focused and scoped.
  • Don’t start work on an issue unless you’re assigned.
  • If you raised an issue, you’ll be assigned by default.
  • Avoid making "drive-by PRs" or unrelated fixes β€” they’ll be closed.

🎯 Points & Difficulty Levels

Your contributions earn points that count toward GSSoC'25 and your NeoNest Leaderboard status!

Difficulty Points
Level 1 3
Level 2 7
Level 3 10

πŸ›‘ Code of Conduct

To maintain a respectful and inclusive environment for all, we follow a Code of Conduct for all contributors and community interactions.

Code of Conduct


πŸ“œ License

By contributing to this project, you agree that your contributions will be licensed under the MIT License.

This helps ensure that all contributions are open, consistent, and usable for the community.

✨ New Here? Start with These!

Let’s make NeoNest the go-to guide for new parents, together! 🌱

We’re excited to see what you’ll build.