Thu's Project Guide
Project: H1-B Employer Data Hub Category: Web App (Flask) + Data Science Last updated: April 14
Note: This guide is created based on the latest state of your project repository + any notes from our discussion. It may not always reflect the most up-to-date information.
Where You Are
We had a great conversation about your project idea, but your repo still has just the template files -- your spec, journal, and scaffolding all need to be filled in before Thursday. The good news is you have a clear vision: a web app that helps people explore H1-B employer data as a career research tool.
What We Talked About
Your project concept:
- Data source: The USCIS H1-B Employer Data Hub -- about 12,000 records
- Goal: A career exploration tool with faceted search and filtering
- UX flow: Industry → Geography → Company size (big/large/small) → Recommended employers
- Filters: FANG companies, company name, industry, geography, company size
- Tech approach: Load the data into SQLite, build a Flask web app with faceted search
This is a strong data-driven web project. The dataset is a good size -- big enough to be interesting, small enough to manage in SQLite.
Next Steps (Before Thursday)
-
Fill out your spec. Open
project.spec.mdand fill in every section. Give it a name, pick "Web Development (Flask)" as the category, and write out your MVP features. Use this prompt:Read my project.spec.md. I am building an H1-B Employer Data Hub -- a Flask web app that lets users explore H1-B visa sponsor data from USCIS. Help me fill out the spec with a clear description, 3-5 MVP features, stretch goals, and tech stack. Keep the MVP focused on filtering and browsing the data. -
Download the data. Go to the H1-B Data Hub and download the dataset. Put it in your
data/folder. -
Scaffold your project. Use this prompt:
Read my project.spec.md and the Flask setup guide at https://csc-121.path.app/unit-3/resources/flask-setup.guide.llm.md Set up my project: initialize uv, install Flask and pandas, create the basic file structure, and build a minimal starting point I can run. I also need sqlite3 for my database. -
Get one tiny slice working. Load your data into SQLite (even a subset), then build one Flask page that shows a filtered list. Just one filter working end-to-end is enough -- for example, filter by company name and display matching results.
-
Write your journal entry. Fill in the Checkpoint 1 section of
project.journal.md. -
Commit and push.
Checkpoint 1 Readiness
By Thursday April 16th, you need:
Helpful Resources
- Flask Setup Guide -- follow this to scaffold your project
- Data Science Setup Guide -- useful for the data loading and analysis parts
- H1-B Employer Data Hub -- your data source
- Checkpoint 1 Instructions -- the full checkpoint requirements