Your repo is part of your project. A reviewer should understand what it does, build it, run it, and see one sample result in under five minutes.
What to ship
For HackIndia, do not submit only a zip file or a single .cpp pasted somewhere. Submit a public GitHub repository with a clear structure and a README.
Keep the project small but complete. A hostel mess expense tracker, DSA visual helper, UPI split calculator, or file search tool is fine if it works and is easy to run.
Your README should answer four questions: what problem, how it works, how to run it, and what C++ features you used.
Use AI to draft the README if you want. Check that every command is real for your repo, every file name exists, and the feature list is honest.
# Mess Expense Tracker
## Problem
Students often split mess and canteen expenses in groups. This tool reads expenses from a CSV file and prints how much each person owes or should receive.
## Approach
The program stores each expense as an object, groups totals by name, and calculates the final balance for each student.
## C++ features used
- std::vector for storing expenses
- std::map for totals by student name
- Classes to model Expense records
- RAII through standard library containers
- File input using std::ifstream
## Build
Run from the project root:
g++ -std=c++17 src/main.cpp src/Expense.cpp -o mess_tracker
## Run
./mess_tracker data/sample_expenses.csv
## Sample output
Asha should receive Rs 120
Rahul should pay Rs 80
Neha should pay Rs 40
Common mistake
Common repo mistakes
Do not submit a repo that only works on your laptop because it uses an absolute path like C:\Users\You\Desktop\data.csv. Use relative paths such as data/sample_expenses.csv.
Do not claim advanced C++ features just to sound better. If you did not use move semantics or RAII directly, say you used standard library containers safely.
Your to-do
Do this now
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.