A Windows desktop application designed to analyze and rank CVs (resumes) based on keyword matching and relevance scoring. The application helps recruiters and HR professionals quickly filter and identify the most suitable candidates from a pool of resumes.
- Multiple CV Analysis: Process multiple CVs in PDF format simultaneously
- Keyword-based Ranking: Automatically rank CVs based on keyword relevance
- Customizable Weighting: Adjust the importance of different sections in the CV
- Result Export: Save filtered CVs to a specified directory
- User-friendly Interface: Intuitive Windows Forms interface for easy navigation
- Database Integration: Local SQL database for storing and managing CV data
- Windows 7 or later
- .NET Framework 4.7.2 or later
- Microsoft SQL Server Express LocalDB (included in Visual Studio)
- Clone or download the repository
- Open the solution file
CV_Analyser.slnin Visual Studio 2019 or later - Restore NuGet packages if prompted
- Build the solution (Ctrl+Shift+B)
-
Launch the Application
- Run the application from Visual Studio or the compiled executable
-
Load CVs
- Click on "Open Folder" to select a directory containing CVs in PDF format
- The application will process and index all PDF files in the selected directory
-
Set Analysis Parameters
- Enter relevant keywords in the "Keywords" field (comma-separated)
- Adjust the ranking threshold using the slider
- Toggle case sensitivity if needed
-
Analyze and View Results
- Click "Analyze" to process the CVs
- View the ranked list of candidates in the results grid
- Click on a CV to see detailed analysis and scoring
-
Export Results
- Click "Save Results" to export the filtered CVs to a specified directory
- CVs will be renamed with their ranking position for easy reference
CV-Analyser/
├── Data/ # Database and data access layer
│ ├── Analyser_DB.mdf # SQL Server database file
│ ├── Query_Account.cs # Account-related database queries
│ └── Query_Resume.cs # Resume-related database queries
├── Engine/ # Core business logic
│ ├── App.cs # Application configuration
│ ├── Check.cs # Input validation
│ ├── Mail.cs # Email functionality
│ └── Resume.cs # Resume processing logic
├── Interface/ # UI components
│ ├── Account/ # Account management forms
│ ├── Analyser/ # Main application form
│ ├── Entry/ # Login/registration forms
│ └── Password/ # Password management forms
└── Properties/ # Application properties and resources
-
Prerequisites
- Visual Studio 2019 or later
- .NET Desktop Development workload
- Data storage and processing workload
-
Database Setup
- The application uses LocalDB by default
- Database file is located in the
Datafolder - Connection string is configured in
App.config
-
Building the Project
- Open the solution in Visual Studio
- Restore NuGet packages
- Build the solution (Ctrl+Shift+B)
- Run the application (F5)
- iTextSharp - For PDF text extraction
- System.Data.SqlClient - For database operations
- System.Drawing - For image processing
- System.Windows.Forms - For the user interface
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support or questions, please open an issue in the repository.
- Thanks to all contributors who have helped improve this project
- Special thanks to the open-source community for the libraries used in this project