Final Project
Proposal due: Tuesday, 7/14 Demo Day: Wednesday, 7/22 (last class) Final submission due: Friday, 7/24
What to Build
After completing three mini projects, you have the skills to build something of your own. The final project is an independent web application that you propose, build, and deploy.
Build something you would actually use, or something someone you know would use.
Requirements
- A functional web application (not just static content)
- Meaningful interactivity using JavaScript
- Deployed with a live URL (GitHub Pages or Vercel)
- Public GitHub repository with clear commit history
Deliverables
1. Proposal (due Tuesday, 7/14)
Commit a PROPOSAL.md to your final project repo with:
- What I'm building: one sentence
- Who it's for or why I chose this: personal motivation or real user need
- Core features: 3 to 5 things it will do
- What I don't know yet: honest list of things you will need to figure out
On Canvas, submit your repo link by the proposal deadline. A classmate will read your PROPOSAL.md in the next class (Wednesday, 7/15) and give you feedback, so your repo needs to be public and up to date.
Optional but recommended: Paste your proposal into AI and ask it to interview you. "Here is my project proposal. Act as a product manager. Ask me clarifying questions one at a time to help turn this into a detailed PRD." In the industry, this is called a Product Requirements Document (PRD). Save the result as PRD.md in your project repo. When you use AI to build features, point it to this file: "Read PRD.md and implement the first feature."
2. Demo Day presentation (Wednesday, 7/22)
A 3-minute live walkthrough of your deployed project, followed by instructor Q&A. Open your live URL in a browser and show what it does. This presentation is a graded part of your final project. If you miss Demo Day without an excused absence, you lose the presentation portion of your final-project score.
3. Final submission (due Friday, 7/24)
Create a new, separate public GitHub repo for this project (do NOT put it inside your oim3690 repo or your username.github.io repo). Deploy it so it has a live URL: use GitHub Pages (username.github.io/repo-name) for a static site, or Vercel if your project needs server-side code (a backend). Include:
- All source code (HTML, CSS, JS)
PROPOSAL.mdwith all sections filled inREADME.mdthat answers:- What does this project do?
- How do I use it? (link to live site)
- Deployed and working at your live URL
- Weekly log entries on your final-project work, including an AI collaboration note: key prompts you used and what you changed after reading AI's output
How It's Evaluated
The final project is 30% of your course grade, scored out of 100 points across two Canvas items: Deployed URL (10 points) and Final Submission (90 points).
The 90 points break down like this:
| Criterion | Points | What it means |
|---|---|---|
| Working software | 30 | The deployed URL loads and the core feature works |
| Documentation | 20 | README answers what it does and how to use it; your log shows what you learned and how you worked with AI |
| Evidence of iteration | 15 | Multiple commits across multiple days with descriptive messages |
| Code understanding | 15 | You can explain any part of your code if asked |
| Demo Day presentation | 10 | You presented your project live on 7/22. Everyone who presented receives the full 10 points. Missing Demo Day without an excused absence scores 0 here |
We do not grade on visual design, code elegance, or feature count.
Tips
- Deploy early. Get your repo and live URL working before writing features.
- If you are stuck on what to build, look back at your pre-course survey answer.
Due Friday, 7/24
Last updated: Wednesday, 7/22/2026