Welcome to HacktoberFest 2021 — a friendly repo to help beginners make their first open‑source contributions. This file is tailored for the repository keshavsingh3197/HacktoberFest-2021 and is ready to copy & paste into that project as README.md.
Friendly, well-structured repos help beginners succeed. Let’s make contributing clear, fast, and fun.
- About
- Why contribute here?
- How to contribute (quick)
- Rules & quality expectations
- Folder structure & naming conventions
- How to open a pull request (detailed)
- Good first issues
- Community & Code of Conduct
- License
- Maintainers
This repository collects beginner-friendly programs, algorithms, and small projects across different programming languages. It is intended for learning, practicing Git/GitHub workflows, and celebrating HacktoberFest by making valid contributions.
Contributions can include:
- New algorithms or problem solutions
- Small utilities or scripts
- Documentation improvements and examples
- Fixes to existing programs
- Beginner-focused: reviewers provide encouraging, constructive feedback.
- Multi-language: add solutions in the language you know.
- Low barrier: small, meaningful PRs are welcome and reviewed.
- Fork this repository
- Clone your fork locally
- Create a branch:
git checkout -b feat/<short-description> - Add your solution inside the correct language folder
- Commit, push, and open a Pull Request
Full instructions are below.
Please follow these to keep the project useful for learners:
- Place files in the correct language folder. See the folder list below.
- File naming: be descriptive and unique. Example:
binary_search_python.pyorlinked_list.cpp. - Small, meaningful PRs only. Large dumps or archive uploads will be closed.
- Add comments explaining logic and expected input/output where applicable.
- No plagiarized or copy‑pasted entire repo content from other large projects.
- No single-line PRs that add no value (these will be marked invalid).
- Include a short explanation in your PR description: what you added and why.
- Follow basic style for the language (PEP8 for Python, reasonable formatting for C/C++/Java, etc.)
If a PR does not meet these guidelines a reviewer will request changes or close it as invalid.
Suggested structure (create missing folders as needed):
HacktoberFest-2021/
├─ C++/
├─ Python/
├─ Java/
├─ JavaScript/
├─ Web-Development/
├─ Algorithms/
├─ Data-Structures/
└─ README.md
Naming conventions:
problemname_language.extension→fibonacci_python.py- If multiple files needed (input/test) add a short suffix:
merge_sort_cpp.cpp,merge_sort_cpp_test.cpp
Folder purpose guidance:
- Algorithms/ — language-agnostic algorithm explanations and pseudocode
- Data-Structures/ — implementations of classic data structures
- Web-Development/ — small web-page projects or examples
- Fork the repo (top-right of the repo page)
- Clone your fork:
git clone https://github.com/<your-username>/HacktoberFest-2021.git
cd HacktoberFest-2021- Create a feature branch (never commit directly to
master/main):
git checkout -b feat/add-<short-description>-
Add your file in the correct folder. Include comments and a short example of usage (input / output) in the file header or as README changes.
-
Stage, commit, push:
git add .
git commit -m "Add <program-name> in <language> - <short description>"
git push origin feat/add-<short-description>- Open a Pull Request from your fork → this repository. Use a helpful PR title and fill the description with:
- What the code does
- Example usage and sample input/output
- Any dependencies or runtime requirements
- Wait for review. A maintainer or reviewer may suggest changes. Please respond politely and update your PR.
Look for issues labeled good first issue or help wanted. These are curated for beginners—try one to gain confidence. If none exist, open a small PR (documentation, small algorithm) and request review.
This project aims to be inclusive and welcoming. Please be respectful and constructive. For serious projects, add or link a full CODE_OF_CONDUCT.md. If maintainers haven’t added one, treat interactions with kindness and assume best intent.
This repository uses the MIT License.
Add a LICENSE file with MIT text if not present. By contributing you license your contribution under MIT.
Primary repo: keshavsingh3197/HacktoberFest-2021
If you are the owner and want to be shown as the maintainer, update the Maintainers section below.
Maintainers:
keshavsingh3197(owner)
- Add this
README.mdto the repo root (replace existing README). - Add
CONTRIBUTING.md, PR/Issue templates, andCODE_OF_CONDUCT.mdto reduce spam and set expectations. - Optionally add a simple CI check to detect empty or one-line PRs.
Thanks for making open-source easier for beginners — have fun and happy hacking!