InternIn is a full-stack Flask web application that helps students and job seekers organize, track, and optimize their internship search — all in one place.
Copyright Notice: This project is original work protected under the Apache 2.0 License. The codebase is open source for educational purposes; please provide proper attribution if any part is reused.
- Secure registration and login with Werkzeug password hashing
- Session management via Flask-Login
- Token-based email password reset with expiration
- Password change with strength validation
- Track internship applications with detailed status updates
- Seven application states: Applied, Interviewing, Offered, Rejected, Accepted, Withdrawn, Waitlisted
- Next action tracking with due dates
- Contact management with structured recruiter and company data
- Rich notes system with auto-save
- Full user profiles with personal info, education details, and bio
- Custom profile picture upload with initials fallback
- Social media integration across 14 platforms (up to 6 accounts)
- 200+ academic major options via Select2
- Profile visibility and privacy controls
- Tabbed settings interface for user and app preferences
- Light, dark, and auto theme options
- Email, reminder, and social notification preferences
- CSV/Excel data export
- Timezone support
- Fully responsive design across desktop, tablet, and mobile
- Glass morphism UI components
- Dynamic navigation with smart back button
- Hover effects, animations, and transitions
- Font Awesome icon integration
| Layer | Technology |
|---|---|
| Backend | Flask 2.3+, SQLAlchemy, Flask-Login |
| Frontend | HTML5, CSS3, JavaScript (ES6+) |
| Templating | Jinja2 |
| Database | Supabase (PostgreSQL) |
| Auth | Supabase Auth |
| Libraries | Select2, Font Awesome, Pandas |
| Security | CSRF protection |
- Password Hashing — Werkzeug with salt
- Password Reset — Secure token-based email flow with expiration
- Input Validation — Server-side validation on all forms
- File Upload Security — Safe handling for profile picture uploads
- Session Management — Flask-Login secure sessions
- CSRF Protection — Built-in cross-site request forgery protection
Licensed under the Apache License 2.0.
| Name | Role |
|---|---|
| Daniel | Lead Developer |
| Elyon | Developer |
| Neville | Developer |
For questions or support, reach out to the team:
- Daniel — daniel.anorue@usm.edu
- Elyon — elyon.aganah@usm.edu
- Neville — neville.onsomu@usm.edu
A DEN Special ™




