This document is for students making their first contribution and for reviewers (teachers/TAs) merging Pull Requests.
- Fork this repository
- Find or create
students/your-github-username/ - Add a
profile.jsonfile with your details - Optionally add a
photo.jpgin the same folder - Commit and open a Pull Request
{
"name": "Your Name",
"github": "your-github-username",
"about": "A short bio about yourself.",
"favoriteTech": "JavaScript",
"image": ""
}| Field | Required | Notes |
|---|---|---|
name |
Yes | Your full name |
github |
Yes | Your GitHub username (must match your folder name) |
about |
Yes | One sentence about yourself |
favoriteTech |
No | Something you're learning or know |
image |
No | Path to photo, e.g. "./photo.jpg". Leave empty for initials. |
- Wrong folder name: Your folder must match your GitHub username exactly
- Invalid JSON: Missing commas, trailing commas, or unmatched quotes
- Missing fields: At minimum, include
name,github, andabout - Photo too large: Keep images under 500KB
The student's folder should be at:
students/<github-username>/profile.json
Optional:
students/<github-username>/photo.jpg
- File is valid JSON (no trailing commas, proper quoting)
-
namefield exists and is a non-empty string -
githubfield matches the folder name -
aboutfield exists and is a non-empty string -
imagefield is either empty string or"./photo.jpg" - No additional fields that could break the site
- Name looks real (not "test", "asdf", or placeholder)
- About is a real sentence (not lorem ipsum)
- No offensive or inappropriate content
- No malicious links or scripts
- File is actually an image (JPEG, PNG, or WebP)
- File size is reasonable (under 500KB)
- Image is appropriate for a class project
{
"name": "Rahul Kumar",
"github": "rahul_dev",
"about": "Trying web development for the first time.",
"favoriteTech": "JavaScript",
"image": "./photo.jpg"
}{
"name": "Jane Doe",
"github": "janedoe",
"about": "Here to learn and build things."
}Trailing comma (will break JSON):
{
"name": "Jane",
"github": "jane",
}Missing required field:
{
"name": "Jane"
}GitHub username mismatch:
- Folder:
students/janedoe/ - JSON:
"github": "jane_doe"(underscore vs no underscore)
You can validate JSON online at jsonlint.com or ask the student to check in their editor.
- Approve the PR if all checks pass
- Merge using "Squash and merge" (keeps main history clean)
- The GitHub Pages deployment will auto-update the site
- Tell the student to check the live site
Leave a comment explaining what needs to be fixed. Common fixes:
- "Your JSON has a trailing comma after the last field. Remove it."
- "Your
githubfield doesn't match your folder name. Please fix." - "Your file is missing the
aboutfield. Please add it."
Be encouraging. This is their first PR.