Skip to content

OptiPath is an intelligent web application designed to help users optimize their resumes by providing AI-powered analysis and actionable suggestions. The application uses a Flutter web frontend and a Python Flask backend with advanced AI and machine learning techniques.

Notifications You must be signed in to change notification settings

Sivadharshini04/OptiPath

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OptiPath: Resume Optimization Web Application

Project Overview

OptiPath is an intelligent web application designed to help users optimize their resumes by providing AI-powered analysis and actionable suggestions. The application uses a Flutter web frontend and a Python Flask backend with advanced AI and machine learning techniques.

Architecture

Frontend (Flutter)

  • Framework: Flutter Web
  • Primary Class: OptiPathApp
  • Key Features:
    • Responsive UI design
    • File upload functionality
    • Dynamic result rendering
    • Error handling

Backend (Python Flask)

  • Framework: Flask
  • Key Components:
    • Document text extraction
    • AI-powered analysis
    • Genetic Algorithm optimization
    • Robust error handling

Technical Components

Frontend Details

Key Classes

  1. OptiPathApp: Root widget defining app theme and structure
  2. OptiPathHomePage: Main page with file upload and analysis functionality
  3. _OptiPathHomePageState: Manages state and interactions

UI/UX Features

  • Gradient app bar
  • Card-based design
  • Responsive layout
  • Progress indicators
  • Error handling cards
  • Dynamic result visualization

Backend Functionality

Text Extraction Strategies

  1. PDF Extraction
    • Uses PyPDF2 for direct text extraction
    • Fallback to Tesseract OCR for image-based PDFs
  2. HTML Extraction
    • Uses BeautifulSoup for parsing
    • Removes scripts and unnecessary elements

AI Analysis

  • Uses Google Gemini API for document analysis
  • Generates structured feedback:
    • Pros
    • Cons
    • Suggestions

Genetic Algorithm Optimization

  • ResumeGeneticOptimizer class
  • Applies evolutionary strategies to resume improvement
  • Features:
    • Population-based optimization
    • Fitness calculation
    • Crossover and mutation techniques

Key Technical Highlights

  • Cross-platform web application
  • AI-driven resume analysis
  • Genetic algorithm for suggestion optimization
  • Robust error handling
  • Comprehensive logging
  • Secure file processing

Technology Stack

Frontend

  • Flutter
  • Dart
  • Material Design
  • File Picker
  • HTTP client

Backend

  • Python
  • Flask
  • Google Gemini AI
  • PyPDF2
  • Tesseract OCR
  • BeautifulSoup
  • Genetic Algorithm implementation

Security and Performance Considerations

  • Secure file uploads
  • Temporary file management
  • Text length limitation
  • Comprehensive error handling
  • Detailed logging

Potential Improvements

  1. Add more file format support
  2. Implement user accounts
  3. Enhance AI suggestion granularity
  4. Add more sophisticated genetic algorithm
  5. Implement caching mechanisms

Deployment Recommendations

  • Use secure HTTPS
  • Implement rate limiting
  • Configure proper CORS
  • Use environment variables for API keys
  • Set up proper error monitoring

Installation and Setup

Frontend Setup

flutter create optipath
# Copy the provided Dart code
flutter pub get
flutter run -d web

Backend Setup

python3 -m venv venv
source venv/bin/activate
pip install flask flask-cors google-generativeai pytesseract PyPDF2 Pillow beautifulsoup4
python app.py

Future Roadmap

  • Machine learning model training
  • Advanced resume parsing
  • Industry-specific optimization
  • Integration with job boards
  • Enhanced UI/UX

About

OptiPath is an intelligent web application designed to help users optimize their resumes by providing AI-powered analysis and actionable suggestions. The application uses a Flutter web frontend and a Python Flask backend with advanced AI and machine learning techniques.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published