ResumeAI was inspired by a common challenge: many job seekers have useful skills and experience but find it difficult to present them clearly and understand how their resumes match a job role. I wanted to build a simple tool that could make resume review more accessible. I built the application with Python and Flask for the backend, HTML and CSS for the interface, and MySQL for storing user accounts and resume analysis history. Users can register, log in, upload a PDF resume, and view the analysis results. The application extracts text from the PDF using PyPDF2, checks it for selected skill keywords, calculates a score, suggests a role based on that score, and displays interview practice questions. One of the main challenges was extracting readable text from PDF files, since resumes can have different layouts and some PDFs may not contain selectable text. Another challenge was connecting the upload and analysis process to the database so that results could be saved and viewed later. I also had to make the feedback straightforward enough for users to understand. While building ResumeAI, I learned how Flask routes connect web pages to application logic, how to work with MySQL, and how to handle uploaded files and extract PDF text. I also learned that automated scores are only useful when their limits are clear. The current analysis uses keyword matching, so its results are guidance rather than a complete assessment of a person’s qualifications. ResumeAI is a starting point for a practical career-support tool, with room to improve its matching accuracy and support more resume formats and job descriptions.
Log in or sign up for Devpost to join the conversation.