S
AI/ML2026CompletedFeatured Project

Wcareer

React + Vite This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. Currently, two official plugins are available: - @vitejs/plugin-rea...

RoleSole Developer
Classificationhigh
Client / ContextOpen Source Project
Development TimelineCompleted

Technical Architecture & Engineering Overview

Detailed system design and core implementation

Core System Architecture The system is divided into distinct layers: a client (client/) built with React 19, Tailwind CSS, and Radix UI for a responsive UI; a mockInterview module using Next.js for interview simulations; a server (server/) running Express 4.21 with JWT authentication, bcrypt, and Nodemailer for email workflows; and a WCareers Python service (llm-server/) that hosts LLM‑driven models (cognitive_test_model.py, resume_analysis.py, etc.) behind a FastAPI/Streamlit API. Communication between the JavaScript and Python layers occurs via RESTful HTTP calls using Axios on the frontend and requests in the backend.

Data Ingestion & Processing Pipelines User‑generated content (resumes, skill updates, interview answers) is first validated by middleware (authMidd, CORS, cookie parser) before being persisted to MongoDB. Skill relationships are enriched and stored in Neo4j, enabling graph queries for the skill‑graph endpoints (/api/skill/graph). For semantic operations, documents are vectorized with Sentence Transformers and indexed in FAISS, supporting endpoints like /api/skill/trending. The AI layer consumes these vectors and external data sources (via BeautifulSoup4, PyPDF) to generate personalized recommendations.

Execution Flow A typical user journey starts at http://localhost:5173 where the React app authenticates via /api/auth/login. Authenticated requests fetch data from /api/job, /api/roadmap, or trigger AI services such as /api/resume/analyze. Mock interview creation (POST /api/interview/create) stores a session in MongoDB, then the frontend polls /api/interview/:mockId for questions and submits answers to /api/interview/answer. Feedback is generated by the Python LLM service and returned via /api/interview/:mockId/feedback.

Security Guardrails All protected routes enforce JWT verification and role‑based checks. Sensitive operations (password reset, email verification) use one‑time‑passwords sent via Nodemailer. Environment secrets are managed with dotenv, and Docker containers isolate the AI models from the Node.js runtime. Rate limiting and input sanitization are applied at the Express middleware level to mitigate abuse.

System Diagrams & Flow Visualizations

Interactive Mermaid architecture & execution flows

Architectural Visualizer · System Architecture

Core System Features

Key capabilities & architectural features

FEATURE 01

User registration, login, and secure JWT authentication.

User registration, login, and secure JWT authentication.

FEATURE 02

Resume upload, parsing, AI‑driven analysis, and enhancement suggestions.

Resume upload, parsing, AI‑driven analysis, and enhancement suggestions.

FEATURE 03

Skill tracking with trending insights and graph‑based relationship visualization.

Skill tracking with trending insights and graph‑based relationship visualization.

FEATURE 04

AI‑generated career roadmaps and personalized job recommendations.

AI‑generated career roadmaps and personalized job recommendations.

FEATURE 05

Mock interview creation, real‑time question delivery, and AI feedback.

Mock interview creation, real‑time question delivery, and AI feedback.

FEATURE 06

Community forum with discussions, posting, and notification system.

Community forum with discussions, posting, and notification system.

FEATURE 07

Dashboard with analytics, charts, and progress tracking.

Dashboard with analytics, charts, and progress tracking.

FEATURE 08

PDF generation of resumes and roadmaps via jsPDF.

PDF generation of resumes and roadmaps via jsPDF.

FEATURE 09

Video interview recording using React Webcam.

Video interview recording using React Webcam.

FEATURE 010

Multi‑modal AI integration (text, voice, PDF) powered by LangChain and Gemini AI.

Multi‑modal AI integration (text, voice, PDF) powered by LangChain and Gemini AI.

Engineering Challenges & Solutions

Problem statements & resolution strategies

Challenge #1

Balancing polyglot persistence (MongoDB, Neo4j, FAISS) while maintaining data consistency.

Balancing polyglot persistence (MongoDB, Neo4j, FAISS) while maintaining data consistency.

Challenge #2

Optimizing LLM inference latency within Docker containers for real‑time feedback.

Optimizing LLM inference latency within Docker containers for real‑time feedback.

Challenge #3

Ensuring secure handling of sensitive user data across multiple services and environments.

Ensuring secure handling of sensitive user data across multiple services and environments.

Challenge #4

Coordinating version compatibility between React 19, Vite 6, and Next.js modules.

Coordinating version compatibility between React 19, Vite 6, and Next.js modules.

Challenge #5

Designing a scalable event‑driven notification system without a dedicated message broker.

Designing a scalable event‑driven notification system without a dedicated message broker.

API Reference & Endpoints

REST API surface & route documentation

METHODENDPOINT PATHDESCRIPTIONCOPY
POST/generate_queriesEndpoint defined in WCareers/2_learning_pathway/api.py
POST/search_and_generateEndpoint defined in WCareers/2_learning_pathway/api.py
POST/generate_subheadingsEndpoint defined in WCareers/2_learning_pathway/api.py
POST/registerEndpoint defined in server/routes/authRoutes.js
POST/loginEndpoint defined in server/routes/authRoutes.js
POST/logoutEndpoint defined in server/routes/authRoutes.js
POST/send-verify-otpEndpoint defined in server/routes/authRoutes.js
POST/verify-accountEndpoint defined in server/routes/authRoutes.js
GET/is-authEndpoint defined in server/routes/authRoutes.js
POST/send-reset-otpEndpoint defined in server/routes/authRoutes.js
POST/reset-passwordEndpoint defined in server/routes/authRoutes.js
POST/createEndpoint defined in server/routes/interviewRoutes.js
GET/:mockIdEndpoint defined in server/routes/interviewRoutes.js
GET/user/:userEmailEndpoint defined in server/routes/interviewRoutes.js
POST/answerEndpoint defined in server/routes/interviewRoutes.js
GET/:mockId/feedbackEndpoint defined in server/routes/interviewRoutes.js
GET/:mockId/answersEndpoint defined in server/routes/interviewRoutes.js
GET/dataEndpoint defined in server/routes/userRoutes.js
GET/Endpoint defined in server/server.js

Key Code Modules & Architecture

Core file entrypoints and service responsibilities

ClientMODULE 01
client

Module component managing client source logic

SrcMODULE 02
old-HireMe-frontend/src

Module component managing src source logic

AppMODULE 03
mockInterview/app

Module component managing app source logic

ComponentsMODULE 04
old-HireMe-frontend/src/components

Module component managing components source logic

UiMODULE 05
mockInterview/components/ui

Module component managing ui source logic

HooksMODULE 06
old-HireMe-frontend/src/hooks

Module component managing hooks source logic

PagesMODULE 07
client/src/pages

Module component managing pages source logic

LibMODULE 08
mockInterview/lib

Module component managing lib source logic

UtilsMODULE 09
server/utils

Module component managing utils source logic

PagesMODULE 010
old-HireMe-frontend/src/Pages

Module component managing Pages source logic

ServicesMODULE 011
server/services

Module component managing services source logic

TypesMODULE 012
old-HireMe-frontend/src/types

Module component managing types source logic

ServerMODULE 013
server

Module component managing server source logic

ConfigMODULE 014
server/config

Module component managing config source logic

ControllersMODULE 015
server/controllers

Module component managing controllers source logic

MiddlewareMODULE 016
server/middleware

Module component managing middleware source logic

ModelsMODULE 017
server/models

Module component managing models source logic

RoutesMODULE 018
server/routes

Module component managing routes source logic

User Journey Pipeline

  1. 1User accesses application user interface via browser
  2. 2User triggers action invoking HTTP/WebSocket API endpoints
  3. 3Payload processed through AI/ML pipeline or local inference model
  4. 4Data persisted or retrieved from database storage layer

Execution Code Flow

  1. 1Client or caller initiates request to application entrypoint
  2. 2Backend router validates request parameters and applies middleware
  3. 3Service layer delegates task to ML runtime or LLM API worker
  4. 4Database ORM/client executes storage query
  5. 5Application serializes JSON/audio/data response back to client

System FAQ & Technical Specifications

Frequently asked questions and core architecture details

Q: What technologies are used in Wcareer?

Wcareer is engineered using modern full-stack frameworks.

Q: What core engineering problem does Wcareer solve?

React + Vite This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. Currently, two official plugins are available: - @vitejs/plugin-rea...

Q: How is 'Balancing polyglot persistence (MongoDB, Neo4j, FAISS) while maintaining data consistency.' resolved in Wcareer?

Resolved through specialized system architecture and resilient state handling.

Related Systems & Case Studies

Explore similar technical architectures and projects

View All Systems