HackIndia Logo
HackathonsNewsSkillsGrowth
HackIndia LogoContact: +91 9910125804

General

  • Companies
  • Colleges
  • Board of Advisors
  • Brand Ambassadors
  • FAQ
  • Contact
  • Report a Bug

Hackathons

  • Upcoming Hackathons
  • Judges
  • Mentors
  • Partners
  • Participating Colleges
  • Testimonials

Resources

  • About Us
  • Branding
  • Latest News
  • Growth
  • Skills
  • Builders
  • Ecosystem
  • Forum
  • Ideas
  • Prompt Optimizer
  • Games

© 2026 HackIndia. All rights reserved.

Privacy PolicyTerms of ServiceCode of ConductSitemap

Build 2.139 · 05 Nov 2026, 10:27 UTC

    HackIndia
    HackathonsNewsInternshipsSkillsGrowthPro Perks
    ← Build a portfolio that gets replies

    All the reading

    Portfolio

    6 lessons, about 26 minutes. The check's questions come from these.

    Contents
    Picking a clear project
    1. 1. Pick a project worth showing
    Shaping a strong profile
    1. 2. Make your GitHub profile readable
    Cleaning repo and README
    1. 3. Turn code into a strong repo
    2. 4. Write the README people need
    Deploying and sharing work
    1. 5. Deploy it free and test the link
    2. 6. Share it for replies and submit the repo

    Picking a clear project

    1. Pick a project worth showing

    4 min

    In 30 seconds
    • Choose one project that is easiest to understand and review.
    • Check if it has one user, one problem, and one visible result.
    • Write a 30-second explanation before you polish the repo.
    Key point

    One clear project

    Your portfolio starts with one project, not five half-finished repos.

    Pick the project a reviewer can understand fast. It should solve one clear problem, for one clear user, with one result they can see.

    What to choose

    Choose something you already built, even if it is rough. Do not start a new idea because it sounds better.

    Good examples: a college event tracker, UPI expense splitter, hostel complaint form, campus bus tracker, placement prep dashboard, or mess menu page.

    Your to-do

    Use this filter

    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.

    0 of 5 done

    Common mistake

    Do not chase fancy

    Do not pick a project only because you spent the most time on it. Time spent is not portfolio value.

    A simple HTML/CSS/JavaScript or React app can work well if the story is clear and the main flow works.

    Shaping a strong profile

    2. Make your GitHub profile readable

    4 min

    In 30 seconds
    • Make your GitHub profile easy to scan in under a minute.
    • Pin your strongest repos so visitors see proof first.
    • Add a short profile README that says what you build and how to reach you.
    Key point

    One idea

    Your GitHub profile is not a storage room. It is the front page for your work.

    A recruiter, mentor, or founder should quickly see who you are, what you build, and which project to open first.

    Your to-do

    Set profile basics

    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.

    0 of 5 done

    Tip

    Cleaning repo and README

    3. Turn code into a strong repo

    5 min

    In 30 seconds
    • Turn a messy project folder into a repo people can scan fast.
    • Use small Git commits that show real progress, not one big upload.
    • Add expected repo files without pushing junk, secrets, or local dependencies.
    Key point

    One thing to remember

    A strong repo is easy to review. A stranger should quickly see where the app starts, where the code lives, and whether the project can be run safely.

    Clean the shape

    Start with the top-level view. If the root folder has random files, old drafts, and final-v2 names, clean it before you write a better README.

    Keep the structure simple. Do not add folders just to look serious. Use names people understand.

    Example

    Folder example

    For a small web app, this is enough. Source code goes in src. Public files go in public. Notes can go in docs.

    Deploying and sharing work

    5. Deploy it free and test the link

    4 min

    In 30 seconds
    • Choose a free host that fits your project type.
    • Deploy one project and set the right build/output settings.
    • Test the live link on phone and desktop before you share it.
    Key point

    One thing matters

    A reviewer should be able to open your project without cloning it.

    Your goal today is one working live link in your README. If the project can be deployed, do not submit only a local setup.

    Pick a host

    Use the simplest host that matches your stack. GitHub Pages is a safe default for static HTML, CSS, and JavaScript projects from a GitHub repository.

    For framework projects, Netlify and Vercel are common Git-connected options. Vercel has a free Hobby plan for personal projects and developers. Netlify can deploy from Git providers after you import an existing project.

    Your to-do

    GitHub Pages path

    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.

    10 questions, 7 to pass.

    Sign in to take the test
    Example

    Worked example

    Suppose you built a quiz app, a hostel mess menu page, and a job alert bot.

    The quiz app looks like practice. The bot is hard to verify. The mess menu page solves a campus problem and can be shown in one link. Pick that.

    30-second explanation:
    This is a hostel mess menu web app. Students can see today’s meals, search by day, and get one shareable link. I built it for my college hostel because the menu was usually posted in WhatsApp messages and got lost.
    
    Before:
    - final-final.js
    - test2.js
    - newcopy.js
    - screenshot-1.png
    - screenshot-final.png
    
    After choosing one project:
    - hostel-menu-tracker/
    - src/
    - public/
    - README.md
    - package.json
    Tip

    Name it clearly

    Rename the project in your notes before you clean the repo. This changes how you present it.

    Instead of “mess-menu-new,” call it “Hostel Menu Tracker.” Use a name that says what the project does.

    Common mistake

    Too broad is weak

    “An AI app for students” is too broad. It is a category, not a project.

    Narrow it to one task, like “an AI resume bullet improver for final-year students” or “a placement notice summariser for college groups.”

    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.

    0 of 5 done

    Use this template:
    Project name:
    Problem it solves:
    Who it is for:
    Main result:
    30-second explanation:

    Use a bio formula

    Keep it specific. Avoid lines like Full stack developer | Open source enthusiast | Learner.

    Say what you actually build. One clear line is better than three vague ones.

    I build web apps with React and Node.js. Looking for internship projects in student tools.
    Your to-do

    Pin strong repos

    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.

    0 of 5 done

    Know the limit

    GitHub lets you pin up to six repositories and gists combined. You do not need to use all six.

    Think like a campus placement panel. They need proof that you can ship, not every file you made in first year.

    Example

    Profile README

    A profile README appears on your GitHub profile when you create a public repository with the exact same name as your GitHub username. It must have a non-empty README.md in the repository root.

    If your username is ritikdev21, create a public repo named ritikdev21. GitHub’s setup flow is: create a new repository, name it exactly like the username, select Public, enable Add README, create the repository, then edit README.

    # Hi, I'm Ritik
    
    I build web apps with React and Node.js.
    I like projects that help students save time or money.
    
    Projects: https://github.com/ritikdev21
    Contact: [email protected]
    Common mistake

    Avoid these

    Do not make the profile crowded with every certificate, badge, and unfinished experiment. Put the strongest proof first.

    Do not leave vague repo names like project1 if you can rename them. A name like campus-splitter, with a short description about splitting UPI expenses, gives instant context.

    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.

    0 of 5 done

    Before
    
    my-project/
      app.js
      index.html
      styles.css
      logo-final-new.png
      test123.js
      readme draft.txt
    
    After
    
    my-project/
      src/
        app.js
        components/
      public/
        logo.png
      docs/
        notes.md
      README.md
      package.json
    Your to-do

    Use commits well

    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.

    0 of 5 done

    git add src/app.js
    git commit -m "move app logic into src folder"
    
    git add public/logo.png README.md
    git commit -m "add project logo and usage notes"
    
    git add package.json
    git commit -m "add scripts for local run and build"

    Add expected files

    Most review-ready repos have README.md and .gitignore. If the project is meant for reuse, add a license too.

    For Node projects, keep package.json clean. For Python, include requirements.txt or pyproject.toml. For frontend frameworks, keep config files in normal expected places, not hidden inside a dump folder.

    Example

    Ignore local junk

    A .gitignore stops local files from entering GitHub. Add it before you push secrets or heavy folders by mistake.

    Example .gitignore for Node
    
    node_modules/
    .env
    .DS_Store
    dist/
    coverage/
    Tip

    License choice

    Add a license only if you want others to reuse or build on your code. MIT is a common simple choice for open sharing.

    If you use MIT, use the standard MIT text from a trusted source. Update the copyright line with your name and year.

    LICENSE
    
    Use a standard MIT text from a trusted source, then update the copyright line with your name and year.
    Example

    UPI tracker example

    Say you built a UPI expense tracker. Move app code into src, keep screenshots in public or assets, and keep notes in docs. Add .gitignore so .env and node_modules stay out of GitHub.

    Then commit in small steps: create src structure, add expense form validation, ignore local config and build output.

    package.json example
    
    {
      "name": "upi-expense-tracker",
      "version": "1.0.0",
      "scripts": {
        "dev": "vite",
        "build": "vite build",
        "preview": "vite preview"
      }
    }
    Common mistake

    Common repo mistakes

    Do not push secrets. If your repo contains passwords, API keys, or private tokens, remove them immediately and rotate the keys.

    Do not try to make the repo look big. Clean names beat too many folders, too many docs, and confusing names like final-v2-new-new.

    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.

    0 of 5 done

    4. Write the README people need

    5 min

    In 30 seconds
    • Write a README that answers what, why, how to run, and where to try.
    • Use a simple structure reviewers can scan on a phone.
    • Push a README that makes your public repo ready for review.
    Key point

    One job

    Your README does the first explanation before anyone reads your code. GitHub says a repository README is often the first item a visitor sees.

    Make the first screen answer four things: what it does, why it is useful, how to get started, and where to try it live if you have a demo.

    What to include

    You do not need a long story. You need a clean path from curiosity to testing.

    Use these parts: short summary, why it exists, features, live demo, tech stack, local setup, screenshots, and contact or maintainer note.

    Example

    README opening

    This is enough for a reviewer to understand the project quickly. Change the name, stack, and steps for your own app.

    RoomSplit
    
    A simple web app to split shared expenses between roommates and track who owes whom.
    
    Why this exists
    Many students in hostels and flats pay for groceries, electricity, and delivery orders together. This app helps calculate shares quickly and avoid confusion.
    
    Features
    - Add people and expenses
    - Split costs equally or by amount
    - See balance summary
    - Export a simple report
    
    Live demo
    https://your-demo-link-here
    
    Tech stack
    - React
    - Node.js
    - Express
    - MongoDB
    
    How to run locally
    1. Clone the repo
    2. Run npm install in frontend and backend
    3. Set environment variables
    4. Run npm run dev
    
    Screenshots
    Add 1 to 3 images in a screenshots folder and link them here
    Your to-do

    Write the sections

    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.

    0 of 5 done

    Example

    Setup section

    If your app has a frontend and backend, split the setup clearly. If you use environment variables, show the file name and variable names, but never commit secrets.

    How to run locally
    
    Frontend
    cd frontend
    npm install
    npm run dev
    
    Backend
    cd backend
    npm install
    cp .env.example .env
    npm run dev
    Common mistake

    Common mistakes

    Do not copy the assignment brief. It explains the task, not your finished project.

    Do not use vague feature bullets like user friendly, scalable, or modern. Say what the app actually does.

    Tip

    Place it right

    GitHub automatically shows README files from the .github directory, root directory, or docs directory. If there are multiple README files, GitHub displays .github first, then root, then docs.

    For this track, keep your main project README simple and easy to find. The root README.md is the safest habit for college project repos.

    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.

    0 of 5 done

    0 of 5 done

    Your to-do

    Netlify path

    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.

    0 of 5 done

    Example

    Vite React example

    For a Vite React app, test the production build before you deploy. This catches broken imports, missing packages, and build errors early.

    If you use environment variables such as import.meta.env.VITE_API_URL, add them in the host dashboard. Do not depend on a local .env file in production.

    # local check
    npm install
    npm run build
    
    # common Vite publish settings
    # Build command: npm run build
    # Publish directory: dist
    
    # .env before deployment
    VITE_API_URL=http://localhost:3000
    VITE_APP_NAME=Campus Notes
    
    # .env after deployment on your host
    VITE_API_URL=https://campus-notes-api.onrender.com
    VITE_APP_NAME=Campus Notes
    Common mistake

    Common breaks

    The most common break is a project that works on your laptop but not online. Usually the host is missing env vars, the app still calls localhost, or the build output folder is wrong.

    A live website cannot call http://localhost:3000 for other people. Point it to the deployed API URL, or explain the limitation clearly in your README.

    Tip

    Test like a reviewer

    Open the link in an incognito or private window. Then open it on your phone using mobile data or a different Wi-Fi.

    Check the first screen, main buttons, one form, route reloads, and API data. If a React Router page shows 404 on refresh on Netlify, add this file.

    # public/_redirects for React Router on Netlify
    /*    /index.html   200
    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.

    0 of 5 done

    6. Share it for replies and submit the repo

    4 min

    In 30 seconds
    • Write a short share pack for your project.
    • Place GitHub and live demo links where reviewers check.
    • Submit a public repo that opens cleanly and can be reviewed.
    Key point

    Remove review friction

    Your project should be easy to open, understand, and trust. A reviewer should not need to message you for files, setup steps, or the demo link.

    GitHub says the README is often the first thing a visitor sees in a repo. Put the goal, live demo, setup steps, and useful links near the top.

    Your to-do

    Build your share pack

    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.

    0 of 5 done

    Example

    Share pack example

    Use specific words. Do not write like an ad. Say what the user does inside the app.

    This example works for a college UPI expense project.

    Project name: FeeFlow
    One-line summary: A simple UPI expense tracker for college students.
    One-sentence impact: Helps hostel and PG groups record shared payments, split bills, and avoid confusion.
    Links: GitHub repo, live demo, portfolio page
    
    README intro:
    FeeFlow is a UPI expense tracker for college students.
    It helps hostel and PG groups record shared payments, split bills, and settle dues without confusion.
    
    Live demo: https://feeflow.vercel.app
    GitHub: https://github.com/yourname/feeflow
    Your to-do

    Place the links

    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.

    0 of 5 done

    Resume entry:
    FeeFlow | React, Firebase | GitHub: github.com/yourname/feeflow | Live: feeflow.vercel.app
    
    LinkedIn project text:
    Built FeeFlow to help college students track shared UPI payments and settle dues.
    Tip

    Test like a reviewer

    Open the repo in an incognito window. Then open the live demo on mobile data.

    If only one link is allowed, submit the public repo link. Make sure the README has the live demo near the top.

    Common mistake

    Avoid broken trust

    Do not submit a private repo, Google Drive zip, or personal folder. Submit the exact public repository link.

    Do not leave secrets in the repo. If you used Firebase, Supabase, or an API key, check that only safe public values are committed.

    git status
    # make sure only intended files are changed
    
    git add .
    git commit -m "Prepare project for sharing"
    git push origin main
    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.

    0 of 5 done