This application allows users to generate professional resumes and cover letters using a locally-running Large Language Model (LLM) through Ollama. Simply enter your personal information, and the app creates well-formatted PDF documents ready for job applications.
- AI-powered document generation using your local LLMs through Ollama
- Professionally formatted PDF output with proper styling and structure
- User-friendly interface built with Streamlit
- Works offline once set up, as it runs entirely on your machine
- Supports multiple LLM models that are available in Ollama
- Python 3.8+
- Ollama installed and running with at least one model
- Recommended models: Gemma, Llama3, or any model that performs well with text generation
-
Clone the repository
git clone https://github.com/hari7261/Resume-CoverLetterGenerator-LLM.git cd Resume-CoverLetterGenerator-LLM -
Install dependencies
pip install -r requirements.txt -
Install and run Ollama
- Download from ollama.ai
- Follow installation instructions
- Run
ollama serveto start the service - Pull a model, e.g.,
ollama pull gemma3
-
Start the application
streamlit run app.py -
Fill in your information
- Enter your full name
- Select or type your target job role
- Add your work experience
- List your key skills (comma-separated)
-
Select a model
- Choose from available Ollama models
- Or enter a model name manually
-
Generate and download
- Click "Generate Documents"
- Download your resume and cover letter as PDFs
app.py- Main Streamlit application fileDejaVuSansCondensed.ttf- Font file for PDF generationrequirements.txt- Python dependenciesdocs/- Documentation assets
- Data Collection: User inputs their information through a Streamlit interface
- LLM Generation: Data is sent to a locally running LLM via Ollama
- Document Processing: The application splits and formats the LLM response
- PDF Creation: Professional PDFs are created with FPDF
- Download: Documents are made available for download
You can customize the document generation by:
- Modifying the prompt in the
app.pyfile - Changing the PDF styling in the
create_pdffunction - Adding additional input fields to collect more user information
- "Could not connect to Ollama": Ensure Ollama is running with
ollama serve - No models available: Make sure you've pulled at least one model with
ollama pull <model-name> - PDF generation errors: Check that the font file is accessible
This project is licensed under the MIT License - see the LICENSE file for details.
Created by Hariom Kumar