Inspiration
Over 1 million international students arrive in the US every year. They're brilliant and driven - but within their first weeks, they're buried under visa rules, compliance deadlines, and USCIS regulations they've never heard of, in a country they just landed in. One missed OPT deadline. One unauthorized course drop. One unreported address change. And their entire future in the US is at risk. We realized there is no intelligent, proactive system that catches these risks before they become violations. Students rely on scattered emails, Reddit posts, and last-minute DSO office visits. We built UniVisa to be that system - a compliance co-pilot that knows your situation and alerts you before things go wrong.
What It Does
UniVisa is an AI-powered visa compliance co-pilot for F-1 and J-1 international students. Onboarding - Students complete a guided profile: university, visa type, program dates, OPT/CPT status, weekly work hours, and travel plans. A searchable university selector makes setup fast. Dashboard - A bento-style layout displays:
- Real-time F-1/J-1 compliance risk score (0–100)
- Active risk flags with severity levels (High / Medium / Low)
- Upcoming critical deadlines - OPT windows, SEVIS reporting, grace periods
- AI Advisor preview with quick-action prompts
AI Advisor - A Gemini-powered chatbot answers visa compliance questions in plain language, grounded in the student's own profile. It recommends DSO confirmation when appropriate and never guesses on life-altering questions.
Alerts - Proactive deadline reminders and compliance notifications ensure nothing critical is missed.
CPT/OPT Job Board - Curated internship opportunities at E-Verify enrolled companies (Google, Microsoft, NVIDIA, Goldman Sachs) with personalized CPT authorization checklists.
DSO Dashboard - Institutional view for advisors to monitor cohort-level risk across all international students in one place.
A demo profile (Riya Sharma - Georgia Tech, F-1, MS Computer Science) lets judges explore the full app instantly with no account creation required.
How We Built It
Frontend - React, Vite, TypeScript, and Tailwind CSS. We implemented a glass-style sidebar, bento dashboard cards, and a searchable university combobox using Popover + Command components. Animations powered by Motion.
Backend - FastAPI (Python) with CORS enabled for the Vite dev server. Endpoints handle student profile creation, risk evaluation, alert generation, and AI chat. The /chat endpoint accepts student_id and question and returns a structured, context-aware AI response.
AI - Google Gemini integrated via REST API. The backend loads GEMINI_API_KEY from .env, constructs a student-context string from the profile, and combines it with a focused system prompt to keep all responses grounded in F-1/J-1 compliance rules.
Risk Engine - A rule-based scoring system evaluates each student profile against real SEVIS violation categories: unauthorized part-time enrollment, on-campus work hour violations, OPT application timing, travel document expiry, and address reporting failures. Each rule adds weighted points to a 0–100 risk score.
Data - Student data is stored in memory for the demo with a seeded profile. The frontend stores the active student ID and calls backend endpoints for all dynamic content.
Fine-Tuned Model for Compliance Intelligence - To move beyond generic AI responses,
we fine-tuned a language model on a curated dataset of real international student
struggles sourced from Reddit communities (r/f1visa, r/internationalstudents, r/USCIS).
We scraped and cleaned thousands of posts, clustered them semantically using
sentence-transformers and HDBSCAN, and identified the top recurring violation patterns -
OPT timing confusion, unauthorized work hours, enrollment drops, travel document errors,
and SEVIS termination scenarios.
This clustering output directly informed our risk rule engine - every rule is backed by
real student-reported data, not assumptions. The fine-tuned model understands the
language international students use when describing their situations ("my I-20 expires
soon", "can I work a few extra hours", "thinking of dropping a class") and maps it
accurately to the underlying compliance risk - something a general-purpose LLM cannot
do reliably.
The result is a system that doesn't just answer questions - it understands the patterns
of how visa violations actually happen in the real world, and flags them before they occur.
Challenges We Ran Into
Module resolution - The frontend initially could not resolve ../lib/api. Fixed by adding a root tsconfig.json with include: ["src"] so TypeScript correctly resolves project paths.
Chat "Student not found" error - After backend restarts, the in-memory store reset while the frontend still held an old student ID. We implemented a fallback to the demo profile so judges always experience a working chatbot regardless of backend state.
Gemini integration - Ensured proper .env loading from the backend directory and corrected the model configuration to use a tuple of model names rather than a single string.
UI consistency - Refactored the entire interface into a unified design system (glassmorphism + bento grid) with a shared sidebar so Dashboard, AI Advisor, Alerts, and Profile feel cohesive and production-grade.
Scope vs. time - With 24 hours and a full-stack build, we had to make hard prioritization calls. We chose depth over breadth - a polished end-to-end flow beats a wide but broken feature set.
Accomplishments We're Proud Of
- Built a complete end-to-end full-stack flow: onboarding → risk scoring → AI chat → alerts - all in 24 hours
- Designed a production-grade glassmorphism + bento UI that looks and feels like a real product
- Implemented Gemini-powered responses with student context, clear error handling, and backend status checks
- Created a judge-friendly demo with zero sign-up required, a seeded demo profile, and clear setup documentation
- Built a risk engine grounded in real SEVIS violation categories, not generic rules
What We Learned
We learned how to architect a full-stack application under extreme time pressure - React + FastAPI integration, Gemini REST prompting with contextual student data, and designing a scalable UI system from scratch. We also learned that robustness wins hackathons. Environment loading, fallback demo logic, and meaningful error messages are not polish - they are the difference between a judge seeing a working product and a blank screen. Most importantly, we learned how serious the visa compliance gap really is. The more we researched, the more we realized how many students are unknowingly at risk - and how much a tool like UniVisa could matter in the real world.
What's Next for UniVisa
RAG over policy documents - Ingest USCIS and SEVP documentation, embed with vector search, and implement retrieval-augmented generation so every AI response cites the exact policy it's based on. Zero hallucination on visa-critical information. Persistence & Auth - Replace in-memory storage with a database and authentication so students can save profiles, track history, and receive ongoing alerts. Real-time policy alerts - When USCIS issues a new memo or executive order (like recent H-1B re-entry uncertainty), UniVisa pushes a personalized alert filtered through each student's profile — not a generic news blast. DSO dashboard - Full institutional view for advisors to monitor cohort risk, generate compliance reports, and communicate with at-risk students in bulk. Expand beyond F-1 - The architecture scales directly to H-1B, O-1, L-1, and other visa types - covering the full immigration journey, not just the student chapter.
Built With
- cors-middleware
- dotenv-(.env)
- fastapi-(python)
- google-gemini-api-(rest)
- in-memory-demo-store
- motion
- popover-+-command-ui-components
- react
- tailwind-css
- typescript
- vite
Log in or sign up for Devpost to join the conversation.