Inspiration

The modern job market is a chaotic universe. Students and early professionals often feel like they are drifting in a void—possessing skills and potential but lacking a clear trajectory. We noticed that traditional career counselors are expensive, and generic job boards are overwhelming. We asked ourselves: What if we could build a GPS for careers? We wanted to move away from boring, text-heavy forms and create an experience that feels like stepping onto the bridge of a spaceship. We were inspired by sci-fi aesthetics and the idea that data science can illuminate the path forward. Thus, ResuNova was born—a tool to turn the "black box" of recruitment into a navigable nebula of opportunities.

What it does

ResuNova is an AI-powered career navigator that takes a user's raw resume and transforms it into a strategic roadmap.

  1. Instant Resume Parsing: Users upload a PDF, and our engine extracts GPA, technical skills, soft skills, and experience automatically.
  2. Predictive Career Modeling: Using a Machine Learning classifier, we predict the career path the user is most statistically aligned with (e.g., Data Scientist, Web Developer, Finance Analyst).
  3. Visual Analytics Dashboard: We visualize the data using interactive radar charts (Skill Matrix), bar graphs (Salary Projections), and line charts (Market Trends).
  4. Strategic Gap Analysis: The system identifies exactly which skills the user is missing and suggests a concrete learning path to bridge that gap.
  5. Alternative Universes: Users can click on alternative career badges to instantly simulate "What if?" scenarios and see how their current stats stack up against different roles.

How we built it

The Backend (Python & Flask)Our engine is powered by Python. We used Flask to serve the application and handle API requests.

  1. Resume Parsing: We utilized pypdf and distinct Regex patterns to scrape text from PDFs. We built a custom keyword density algorithm that maps raw text to a numerical feature vector X .
  2. Machine Learning: We trained a Gradient Boosting Classifier (sklearn.ensemble.GradientBoostingClassifier) on a custom dataset of career profiles. We used a pipeline that first scales the dat and then applies the boosting ensemble to minimize the loss function and predict the probability P(y|X) for each career class.

The Frontend (HTML5, CSS3, JS) We wanted a "Cyberpunk/Space" aesthetic without the overhead of heavy frameworks like React.

  1. Visuals: We used pure CSS3 animations for the Nebula Background, using keyframes to shift gradients (#10002b to #000000) and a JavaScript particle generator for the falling stars effect.
  2. Data Viz: We implemented Chart.js for the dashboard. We heavily customized the Radar and Doughnut charts, ensuring that animations trigger only when the user scrolls them into view (using the IntersectionObserver API).

Challenges we ran into

  1. The "White Line" Glitch: We struggled with Chart.js rendering default white backgrounds behind the scale numbers on our dark-themed Radar chart, which ruined the aesthetic. We had to dig deep into the library's scale options to set backdropColor: 'transparent'.
  2. Unstructured Data: Resumes are messy. Distinguishing between "Java" (the coffee shop experience) and "Java" (the coding language) required finetuning our keyword proximity logic.
  3. Handling Missing Data: Early versions crashed if a user didn't have a specific field (like GPA). We implemented a "Self-Healing" UI in JavaScript that generates fallback mock data and visual placeholders so the experience remains immersive even with partial inputs.

Accomplishments that we're proud of

  1. The UI/UX: We are incredibly proud of the "Glassmorphism" design. The translucent cards that reveal the moving stars behind them create a true sense of depth.
  2. The Accuracy: Our Gradient Boosting model is achieving high confidence intervals on standard technical resumes.
  3. Interactivity: The ability to click on "Alternative Careers" and instantly re-render the entire dashboard without reloading the page makes the app feel incredibly fast and responsive.

What we learned

  1. Feature Engineering is Key: The ML model is only as good as the data fed into it. We learned how to normalize wildly different metrics (like a 1-10 skill score vs. a 4.0 GPA) into a cohesive vector.
  2. CSS Animation Performance: We learned how to animate background gradients and hundreds of star particles without causing browser lag.
  3. The Power of Feedback: Adding the "AI Executive Summary" text generation gave the numbers a voice, making the data feel more personal to the user.

What's next for ResuNova

  1. LLM Integration: We plan to replace the rule-based summary with the Gemini API to provide hyper-personalized critique.
  2. Live Job Scraping: Integrating a scraper to show real open job listings that match the predicted role.
  3. Community: Adding a feature for users to share their "Career Constellations" with friends.
Share this project:

Updates