Skip to content

Radib-BK/Skill-Sync-AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

47 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SkillSync AI - Smart Resume Analyzer

A modern, AI-powered resume analysis system that helps match candidates with job requirements using advanced NLP and domain-specific scoring.

πŸš€ Live Demo

πŸ“Έ Screenshots

Dashboard

Login Page

Register Page

Dashboard

Analysis Result Page

Results

History View

History

🌟 Features

Smart Resume Analysis

  • AI-Powered Matching: Uses advanced NLP to understand both resumes and job descriptions
  • Domain-Aware Scoring: Considers 25+ industry domains for better matching accuracy
  • Experience Level Detection: Automatically detects and matches candidate experience levels
  • Comprehensive Skill Detection: Identifies technical, soft, and domain-specific skills
  • Smart Recommendations: Provides targeted suggestions for skill improvement

User Features

  • Secure Authentication: Full user authentication system
  • History Tracking: Save and track analysis results
  • Modern UI: Clean, responsive Blazor-based interface
  • Cross-Platform: Works on all modern browsers

πŸ› οΈ Technology Stack

Frontend (C# / Blazor WebAssembly)

  • Language: C# 12
  • Framework: .NET 8.0 Blazor WebAssembly
  • UI Components: Custom-built modern components
  • Styling: CSS with modern animations
  • State Management: Built-in Blazor state management

Backend (C# / ASP.NET Core)

  • Language: C# 12
  • Framework: .NET 8.0 ASP.NET Core
  • ORM: Entity Framework Core 8.0
  • Database: MySQL with EF Core
  • Authentication: JWT-based authentication
  • API Documentation: Swagger/OpenAPI

Shared (C#)

  • Models: Shared C# class library
  • DTOs: Cross-platform data transfer objects
  • Validation: Shared validation logic

AI Service (Python)

  • Framework: FastAPI
  • AI Models:
    • Sentence Transformers (all-MiniLM-L6-v2)
    • spaCy NER (en_core_web_sm)
  • Fallback System: RapidFuzz for text matching
  • Performance: Caching and optimization for quick results

πŸ“Š Architecture

graph TD
    A[Blazor WebAssembly Client] -->|HTTP/REST| B[ASP.NET Core API]
    B -->|Authentication| C[JWT Auth]
    B -->|Data Storage| D[MySQL Database]
    B -->|Resume Analysis| E[Python AI Service]
    E -->|Text Embedding| F[Sentence Transformers]
    E -->|Skill Extraction| G[spaCy NER]
    E -->|Fallback| H[RapidFuzz]
Loading

☁️ Deployment Architecture

πŸ”΅ Microsoft Azure

  • Frontend: Blazor WebAssembly app deployed on GitHub Pages with Azure CDN
  • Backend API: ASP.NET Core API hosted on Azure App Service
  • Database: MySQL database on Azure Database for MySQL
  • SSL/TLS: Managed certificates for secure HTTPS connections
  • Scaling: Auto-scaling enabled based on demand

πŸ€— Huggingface Spaces

  • AI Service: FastAPI-based AI service deployed on Huggingface Spaces
  • Models:
    • Sentence Transformers (all-MiniLM-L6-v2) for semantic similarity
    • spaCy NER (en_core_web_sm) for named entity recognition
  • GPU Support: Optimized for CPU inference with potential GPU acceleration
  • Caching: Model caching for improved response times

πŸ”„ CI/CD Pipeline

  • GitHub Actions: Automated deployment pipeline
  • Azure DevOps: Continuous integration and deployment
  • Environment Management: Separate staging and production environments

πŸš€ Getting Started

Prerequisites

  • .NET 8.0 SDK
  • Python 3.10
  • MySQL Server

Installation

  1. Clone the Repository

    git clone https://github.com/Radib-BK/Skill-Sync-AI.git
    cd SkillSync-AI
    cd ResumeAnalyzer
  2. Setup Database

    cd ResumeAnalyzer.Api
    dotnet ef database update
  3. Setup AI Service

    cd ../ResumeAnalyzer.AIService
    python install_models.py
    # OR
    python setup.py
  4. Run the Services

    In separate terminals:

    # Terminal 1 - API
    cd ResumeAnalyzer.Api
    dotnet run
    
    # Terminal 2 - Client
    cd ResumeAnalyzer.Client
    dotnet run
    
    # Terminal 3 - AI Service
    cd ResumeAnalyzer.AIService
    uvicorn main:app --host 0.0.0.0 --port 5002

πŸ”’ Security Features

  • JWT-based authentication
  • Secure password hashing
  • CORS protection
  • Input validation
  • Rate limiting
  • Error handling

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published