The LLM-Powered Placement Preparation Assistant is a comprehensive, AI-driven platform that helps users prepare for job placements. It leverages large language models (LLMs) to provide personalized coding practice, system design help, resume analysis, mock interviews, and much more β all from a single intuitive web interface.
- π Document Processing & Summarization: Extract and summarize text from PDFs and images using OCR.
- π‘ Code Explanation & Optimization: Get step-by-step explanations and improvements for code in multiple languages.
- π DSA Problem Generation: Generate custom data structures and algorithm problems tailored to your skill level.
- π§ͺ Mock Tests: Create coding tests based on selected topics and difficulty.
- π Networking & System Design: Access reference sheets and detailed design patterns.
- π― STAR Response Generator: Craft effective behavioral interview responses using the STAR method.
- π£οΈ Mock HR Interviews: Get tailored HR interview questions with tips.
- π Resume Analysis: Match your resume to job descriptions and get detailed feedback.
- π’ Company-Specific Prep: Explore common questions and advice for top tech companies.
- ποΈ Study Plan Generation: Build a custom study roadmap based on your goals and experience level.
- Frontend: Gradio
- Backend: Python
- AI Model: OpenAI API (via OpenRouter)
- OCR: Tesseract
- PDF Parsing: PyMuPDF (fitz)
-
Clone the repository:
git clone https://github.com/your-username/placement-preparation-assistant.git cd placement-preparation-assistant -
Install dependencies:
pip install -r requirements.txt
-
Set up your environment:
export API_KEY=your_openai_api_key -
Run the app:
python app.py
- Navigate to:
http://localhost:7860 - Choose a feature from the tabbed UI
- Upload documents, request problem sets, analyze resumes, or simulate interviews
- Get LLM-powered results in real-time
Make sure to add your OpenRouter API key using:
export API_KEY=your_openai_api_keyBelow are sample screenshots from each feature of the application. Replace these placeholder paths with actual screenshots stored in
./screenshots/.
Contributions are welcome! Follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add AmazingFeature') - Push to GitHub (
git push origin feature/AmazingFeature) - Open a Pull Request
For questions or feedback, please reach out to the project maintainer.











