MCP Resume Server Server
Fetches resume data from a GitHub gist to provide professional background context to LLMs.
Documentation
π€ AI Resume - Interactive Chat Interface
Chat with Michael Wybraniec's AI-powered resume using open-source LLMs - Deploy for FREE!
β¨ Built with a clean, modular architecture for maximum maintainability and scalability.
π Table of Contents
- π Features
- π― Quick Start
- π Deploy to Streamlit Cloud
- π€ LLM Provider Setup
- ποΈ Architecture
- βοΈ AI Act Compliance
- π‘ Usage Examples
- π§ Features & Functionality
- π Deployment Options
- π Project Structure
- π¨ Customization
- π οΈ Development
- β Troubleshooting
- π Contact & Support
- π License
π Features
π― Core Functionality
- π Interactive Resume Chat - Ask any question about Michael's background and experience
- π― Smart Context Retrieval - Intelligent context selection based on user questions
- π PDF Download - Generate and download professional CV on demand
- π― Smart Matching - Job description analysis for recruiter insights
π€ AI & LLM Integration
- π€ Multiple LLM Providers - OpenRouter (free models), OpenAI, Ollama (local)
- β‘ Real-time Responses - Instant responses with intelligent context retrieval
- π Free Models Available - Use powerful open-source models at no cost
- π§ Flexible Configuration - Easy switching between different AI providers
π¨ User Experience
- π¬ Modern Chat UI - Beautiful Streamlit interface with quick action buttons
- π± Mobile Responsive - Works perfectly on all devices and screen sizes
- β System Status - Real-time status indicator shows when all systems are ready
- π§ Auto-Configuration - Smart setup flow with contextual help
- β‘ Quick Actions - One-click access to common tasks and insights
ποΈ Technical Excellence
- ποΈ Purpose-Based Architecture - Professional project organization with logical file grouping
- π Free Deployment - Deploy on Streamlit Cloud for free
- π¦ Modular Design - Clean separation of concerns for maintainability
- π§ Easy Customization - Simple to adapt for your own resume and branding
βοΈ AI Act Compliance
- β Full EU AI Act Compliance - Complete implementation of all high-risk AI system requirements
- π Advanced Monitoring - Real-time compliance monitoring with automated alerting
- π Audit Procedures - Comprehensive audit framework with standardized checklists
- π Performance Analytics - Advanced analytics with trend analysis and insights
- π Conformity Assessment - Systematic assessment procedures for certification readiness
- π Certification Preparation - Complete document management for regulatory submission
- β Compliance Validation - Automated and manual validation with certification eligibility
π¬ Live Demo
π Try it now! Deploy your own instance on Streamlit Cloud or run locally.
π± Screenshots
Coming soon: Interactive screenshots and demo GIFs
π― What You Can Do
- π¬ Chat with the AI - Ask questions about experience, skills, and projects
- π Download CV - Generate professional PDF resumes
- π― Smart Matching - Analyze job descriptions for fit
- β‘ Quick Actions - Get instant insights with one-click buttons
π― Quick Start (Local)
Prerequisites
- Python 3.11 or higher
- Git
Installation Steps
# 1. Clone the repository
git clone https://github.com/michaelwybraniec/mcp-resume.git
cd mcp-resume
# 2. Create virtual environment (recommended)
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 3. Install dependencies
pip install -r requirements.txt
# 4. Run the application
streamlit run app.py
π First Run
- Open your browser to
http://localhost:8501 - Get a free API key from OpenRouter.ai
- Add your API key in the sidebar
- Look for "β All Systems Ready!" status
- Start chatting! π
π‘ Pro Tip: Use the free model
meta-llama/llama-3.1-8b-instruct:freefor testing!
π Deploy to Streamlit Cloud (FREE!)
1. Push to GitHub
git add .
git commit -m "Deploy AI Resume to Streamlit Cloud"
git push origin main
2. Deploy on Streamlit Cloud
- Go to share.streamlit.io
- Connect your GitHub account
- Select your repository
- Set main file path:
app.py - Click "Deploy"!
3. Configure Secrets (Optional)
For enhanced LLM providers, add secrets in Streamlit Cloud dashboard:
[secrets]
OPENROUTER_API_KEY = "your_openrouter_api_key_here"
OPENAI_API_KEY = "your_openai_api_key_here"
4. Your app is live! π
You'll get a URL like: https://your-username-mcp-resume-app-xyz.streamlit.app
π€ LLM Provider Setup
Option 1: OpenRouter (Recommended)
- Free models available!
- Sign up at OpenRouter
- Get API key and add via the sidebar or Streamlit secrets
- Use free models like
meta-llama/llama-3.1-8b-instruct:free
Option 2: Ollama (Local Development)
# Install Ollama
brew install ollama # macOS
# or visit https://ollama.ai for other platforms
# Start Ollama
ollama serve
# Install models
ollama pull llama3.2
ollama pull llama3.1
Option 3: OpenAI (Paid)
- Get API key from OpenAI
- Add to Streamlit secrets or enter in the app
ποΈ Architecture
Purpose-Based Organization:
mcp-resume/
βββ π app.py # Main entry point (Streamlit-ready)
βββ π requirements.txt # Dependencies
β
βββ π§ core/ # Foundation & Configuration
β βββ config.py # Settings & constants
β βββ models.py # Data models & types
β
βββ βοΈ services/ # Business Logic & Integrations
β βββ resume_service.py # Resume data handling
β βββ llm_providers.py # AI/LLM integrations
β βββ document_generator.py # PDF generation
β βββ fallback_resume.py # Data fallback service
β
βββ π¨ ui/ # User Interface Layer
β βββ ui_components.py # UI components & styling
β βββ session_manager.py # Session state management
β
βββ π data/ # Data Files
β βββ resume.json
β βββ michael_wybraniec_resume.json
β βββ CV_Michael_Wybraniec_15_Jun_2025.pdf
β
βββ π¨ utils/ # Utility Scripts
βββ create_gist.py # GitHub Gist utilities
System Architecture Diagram:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π Streamlit App β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β π¨ UI Layer (ui/) β
β βββ ui_components.py # Chat interface, modals, styling β
β βββ session_manager.py # State management & initialization β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β βοΈ Services Layer (services/) β
β βββ resume_service.py # Data retrieval & context β
β βββ llm_providers.py # AI/LLM integrations β
β βββ document_generator.py # PDF generation β
β βββ fallback_resume.py # Data fallback service β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β π§ Core Layer (core/) β
β βββ config.py # Settings & constants β
β βββ models.py # Data models & types β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β π Data Layer (data/) β
β βββ resume.json # Primary resume data β
β βββ michael_wybraniec_resume.json # Backup data β
β βββ CV_Michael_Wybraniec_15_Jun_2025.pdf # Professional CV β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π€ External LLM Providers β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β π OpenRouter API β π Ollama Local β π OpenAI API β
β β’ Free models β β’ llama3.2 β β’ GPT models β
β β’ Paid models β β’ llama3.1 β β’ Advanced AI β
β β’ Rate limiting β β’ Local processing β β’ High quality β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Data Flow:
User Input β UI Components β Session Manager β Resume Service
β β β β
LLM Providers β Message Processing β Context Generation β JSON Data
β
AI Response β UI Components β User Interface
βοΈ AI Act Compliance
π― Overview
This AI Resume system is fully compliant with the EU AI Act regulations for high-risk AI systems. The system has been designed and implemented with comprehensive compliance measures across all required areas.
π Compliance Status
| Compliance Area | Status | Implementation |
|---|---|---|
| Article 9: Risk Management | β COMPLIANT | Comprehensive risk management system with automated assessment |
| Article 10: Data Governance | β COMPLIANT | Data quality management and processing record systems |
| Article 11: Technical Documentation | β COMPLIANT | Complete system architecture and algorithm documentation |
| Article 12: Record Keeping | β COMPLIANT | Comprehensive audit trails and operation logging |
| Article 13: Transparency | β COMPLIANT | AI transparency notices and user information provision |
| Article 14: Human Oversight | β COMPLIANT | Human oversight mechanisms and response flagging |
| Article 15: Accuracy & Cybersecurity | β COMPLIANT | System accuracy monitoring and security measures |
π Compliance Features
Phase 1: Immediate Compliance Measures
- β AI Transparency Notices - Clear notices about AI system usage and limitations
- β Human Oversight Dashboard - Real-time monitoring of flagged responses
- β Response Flagging System - Users can flag AI responses for human review
- β User Rights Information - Comprehensive information about user rights and system capabilities
Phase 2: Core Compliance Implementation
- β Risk Management System - Automated risk identification, assessment, and mitigation
- β Data Governance Framework - Data quality assessment and processing record management
- β Technical Documentation - Complete system architecture and compliance documentation
- β Record Keeping System - Comprehensive user interaction logging and audit trails
Phase 3: Advanced Compliance
- β Advanced Monitoring - Real-time compliance monitoring with automated alerting
- β Audit Procedures - Comprehensive audit framework with standardized checklists
- β Performance Analytics - Advanced analytics with trend analysis and insights
- β Compliance Alerting - Intelligent alert system with threshold-based notifications
Phase 4: Conformity Assessment & Certification
- β Conformity Assessment Framework - Systematic assessment procedures with standardized criteria
- β Certification Preparation - Complete document management and application procedures
- β Compliance Validation - Automated and manual validation with certification readiness
- β Regulatory Documentation - Prepared documentation for regulatory submission
π Compliance Dashboard
The system includes a comprehensive compliance dashboard accessible through the sidebar that provides:
- Real-time Compliance Status - Live monitoring of all compliance systems
- Risk Management Metrics - Risk levels, mitigation status, and trend analysis
- Data Governance Status - Data quality scores and processing compliance
- Audit Trail Monitoring - System operation logs and audit trail integrity
- Performance Analytics - Compliance KPIs and trend analysis
- Certification Readiness - Real-time assessment of certification eligibility
π§ Compliance Architecture
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β βοΈ AI Act Compliance Layer β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β π Advanced Monitoring β π Audit Procedures β
β β’ Real-time monitoring β β’ Standardized checklists β
β β’ Automated alerting β β’ Comprehensive reporting β
β β’ Performance analytics β β’ Compliance verification β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β π Conformity Assessment β π Certification Preparation β
β β’ Systematic procedures β β’ Document management β
β β’ Standardized criteria β β’ Application workflows β
β β’ Certification readiness β β’ Regulatory submission β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β οΈ Risk Management β π Data Governance β
β β’ Risk identification β β’ Data quality management β
β β’ Assessment procedures β β’ Processing records β
β β’ Mitigation strategies β β’ Compliance monitoring β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β π Record Keeping β β
Compliance Validation β
β β’ System operation logs β β’ Automated validation rules β
β β’ Audit trails β β’ Manual validation procedures β
β β’ Retention management β β’ Certification eligibility β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
π Compliance Documentation
AI_ACT_COMPLIANCE.md- Comprehensive compliance documentationservices/risk_management.py- Risk management system implementationservices/data_governance.py- Data governance and quality managementservices/record_keeping.py- Record keeping and audit trail systemservices/compliance_monitoring.py- Advanced monitoring and alertingservices/audit_procedures.py- Audit procedures and protocolsservices/performance_analytics.py- Performance analytics and insightsservices/conformity_assessment.py- Conformity assessment frameworkservices/certification_preparation.py- Certification preparation systemservices/compliance_validation.py- Compliance validation procedures
π― Compliance Benefits
- β Regulatory Compliance - Full adherence to EU AI Act requirements
- β Risk Mitigation - Comprehensive risk management and monitoring
- β Transparency - Clear AI system information and user rights
- β Human Oversight - Effective human control and review mechanisms
- β Audit Readiness - Complete documentation and audit trails
- β Certification Ready - Prepared for official compliance certification
Module Responsibilities:
π§ Core Layer
core/config.py- Configuration, constants, and settingscore/models.py- Data models and type definitions
π¨ UI Layer
ui/ui_components.py- UI components, styling, and modalsui/session_manager.py- Session state management and initialization
βοΈ Services Layer
services/resume_service.py- Resume data retrieval and context generationservices/llm_providers.py- LLM provider implementations and unified chat interfaceservices/document_generator.py- PDF generation and export functionalityservices/fallback_resume.py- Resume data service and context management
π Data Layer
data/- Resume JSON files and PDF assetsutils/- Utility scripts and helper functions
π‘ Usage Examples
π¬ Chat Examples:
- "Tell me about Michael's work experience"
- "What are his technical skills?"
- "Summarize his background for a recruiter"
- "Find projects involving JavaScript"
- "What's his experience with AI and machine learning?"
- "How many years of Python experience does he have?"
- "Has he worked with AI/ML technologies?"
- "What industries has he worked in?"
β‘ Quick Actions:
- π€ Summarize Profile - Get comprehensive candidate overview
- π Years Experience - View career progression timeline
- π οΈ Technical Skills - Analyze technical competencies
- π― Smart Match - Job fit analysis with match scores
- π Download CV - Professional PDF resume
π― For Recruiters & HR:
- "Is this candidate suitable for a senior developer role?"
- "What's their leadership experience?"
- "Do they have experience with cloud platforms?"
- "Rate their frontend vs backend skills"
- "Analyze fit for this job description..." (paste job description)
π§ Features & Functionality
π± Modern Chat Interface
- Clean, professional design with expanded sidebar
- Quick action buttons for instant insights
- Real-time system status indicator
- Message timestamps and processing indicators
- Mobile-responsive design
π― Smart Context Retrieval
- Intelligent context selection based on user questions
- Focused responses with relevant resume sections
- Experience, skills, projects, and achievements matching
- Job description analysis capabilities
π Professional CV Generation
- Generate PDF CV on demand
- Clean, professional formatting
- Download directly from the interface
π§ Enhanced User Experience
- System Status: Real-time indicator showing "All Systems Ready!" when configured
- Help & Tips: Comprehensive setup guide and sample questions
- Quick Actions: Organized, expandable panel for common tasks
- Auto-Setup: Smart configuration flow with contextual guidance
π Deployment Options
1. Streamlit Cloud (Recommended - Free) β
- Free hosting for public repositories
- Automatic deployments from GitHub
- Built-in secrets management
- Perfect for demos and portfolios
2. Local Development
pip install -r requirements.txt
streamlit run app.py
3. Other Cloud Platforms
- Railway, Render, Heroku
- Use provided
requirements.txtandruntime.txt - Set startup command:
streamlit run app.py --server.port $PORT
π Project Structure
mcp-resume/
βββ π app.py # Main entry point (Streamlit-ready)
βββ π requirements.txt # Python dependencies
βββ π runtime.txt # Python version for deployment
βββ π README.md # Documentation
βββ π DEPLOYMENT.md # Deployment guide
βββ π§ secrets.toml.example # Example secrets configuration
βββ βοΈ AI_ACT_COMPLIANCE.md # AI Act compliance documentation
βββ π agentic-sdlc/ # Agentic SDLC project management
β βββ tasks/ # Task management and tracking
β βββ project-backlog.md # Project backlog and progress
β
βββ π§ core/ # Foundation & Configuration
β βββ __init__.py
β βββ config.py # Settings & constants
β βββ models.py # Data models & types
β
βββ βοΈ services/ # Business Logic & Integrations
β βββ __init__.py
β βββ resume_service.py # Resume data handling
β βββ llm_providers.py # AI/LLM integrations
β βββ document_generator.py # PDF generation
β βββ fallback_resume.py # Data fallback service
β βββ risk_management.py # AI Act risk management system
β βββ data_governance.py # Data governance and quality management
β βββ record_keeping.py # Record keeping and audit trails
β βββ compliance_monitoring.py # Advanced compliance monitoring
β βββ audit_procedures.py # Audit procedures and protocols
β βββ performance_analytics.py # Performance analytics and insights
β βββ conformity_assessment.py # Conformity assessment framework
β βββ certification_preparation.py # Certification preparation system
β βββ compliance_validation.py # Compliance validation procedures
β
βββ π¨ ui/ # User Interface Layer
β βββ __init__.py
β βββ ui_components.py # UI components & styling
β βββ session_manager.py # Session state management
β
βββ π data/ # Data Files
β βββ resume.json # Primary resume data
β βββ michael_wybraniec_resume.json # Backup resume data
β βββ CV_Michael_Wybraniec_15_Jun_2025.pdf # Professional CV
β βββ risk_management_log.json # Risk management data
β βββ data_governance_log.json # Data governance records
β βββ system_records.json # System operation logs
β βββ audit_trails.json # Audit trail data
β βββ compliance_monitoring.json # Compliance monitoring data
β βββ audit_procedures.json # Audit procedures data
β βββ performance_analytics.json # Performance analytics data
β βββ conformity_assessment.json # Conformity assessment data
β βββ certification_preparation.json # Certification preparation data
β βββ compliance_validation.json # Compliance validation data
β
βββ π¨ utils/ # Utility Scripts
β βββ __init__.py
β βββ create_gist.py # GitHub Gist utilities
β
βββ π venv/ # Virtual environment
ποΈ Purpose-Based Architecture Benefits
π§ For Developers:
- Easy Navigation: Find files by purpose (UI, services, data, etc.)
- Maintainable: Clear separation of concerns across directories
- Scalable: Add new features without touching existing modules
- Testable: Each layer can be tested independently
- Professional: Industry-standard project organization
π For Features:
- New LLM Providers: Extend
services/llm_providers.py - UI Changes: Modify
ui/ui_components.py - Export Formats: Add to
services/document_generator.py - Data Sources: Extend
services/resume_service.py - Configuration: Update
core/config.py
π Organization Highlights:
- Streamlit Compatible:
app.pystays in root for deployment - Logical Grouping: Files organized by functionality, not arbitrarily
- Clean Root: No clutter - only essential files visible
- Python Packages: Proper
__init__.pyfiles for clean imports
Architecture Highlights:
- 88% reduction in main file complexity (1,500 β 180 lines)
- 8 focused modules instead of monolithic structure
- Clear dependencies and import relationships
- Single responsibility principle throughout
π Getting Started
-
Clone and Install
git clone <your-repo> cd mcp-resume pip install -r requirements.txt -
Run Locally
streamlit run app.py -
Configure & Chat
- Navigate to
http://localhost:8501 - Get a free API key from OpenRouter.ai
- Add your API key in the sidebar
- When you see "β All Systems Ready!" you're good to go!
- Start chatting with the AI resume!
- Navigate to
π¨ Customization
π Adding Your Own Resume
Step 1: Prepare Your Resume Data
{
"personal_info": {
"name": "Your Name",
"title": "Your Professional Title",
"email": "[email protected]",
"phone": "+1-234-567-8900",
"location": "Your City, Country",
"linkedin": "https://linkedin.com/in/yourprofile",
"github": "https://github.com/yourusername",
"website": "https://yourwebsite.com"
},
"summary": "Your professional summary...",
"experience": [
{
"company": "Company Name",
"position": "Your Position",
"duration": "2020 - Present",
"description": "Your role description...",
"achievements": ["Achievement 1", "Achievement 2"]
}
],
"skills": {
"technical": ["Python", "JavaScript", "React"],
"soft": ["Leadership", "Communication", "Problem Solving"]
},
"education": [
{
"institution": "University Name",
"degree": "Bachelor of Science",
"field": "Computer Science",
"year": "2020"
}
]
}
Step 2: Update Files
- Replace resume data: Update
data/michael_wybraniec_resume.jsonwith your data - Update branding: Modify header in
ui/ui_components.py - Replace CV: Add your PDF to
data/folder - Update config: Modify constants in
core/config.py
π€ LLM Configuration
Adding New Providers
# In services/llm_providers.py
class CustomProvider(LLMProvider):
def __init__(self):
super().__init__("custom_provider")
def chat_completion(self, messages, model, api_key):
# Your custom implementation
response = your_api_call(messages, model, api_key)
return response.choices[0].message.content
Customizing System Prompts
# In services/llm_providers.py
SYSTEM_PROMPT = """
You are an AI assistant helping with resume analysis.
Customize this prompt for your specific needs.
"""
π¨ UI Customization
Branding & Colors
# In ui/ui_components.py
def render_header():
st.markdown("""
<div style="background: linear-gradient(90deg, #your-color-1, #your-color-2);">
<h1>Your Name - AI Resume</h1>
</div>
""", unsafe_allow_html=True)
Custom Quick Actions
# In ui/ui_components.py
def render_quick_actions():
col1, col2 = st.columns(2)
with col1:
if st.button("π― Your Custom Action"):
# Your custom logic
pass
Custom Styling
# In ui/ui_components.py
def apply_custom_css():
st.markdown("""
<style>
.custom-chat-message {
background-color: #your-color;
border-radius: 10px;
padding: 10px;
}
</style>
""", unsafe_allow_html=True)
π Export Customization
Custom PDF Templates
# In services/document_generator.py
def generate_custom_cv(resume_data):
# Custom PDF generation logic
# Add your company logo, custom fonts, etc.
pass
Multiple Export Formats
# Add new export methods
def export_to_docx(resume_data):
# DOCX export implementation
pass
def export_to_html(resume_data):
# HTML export implementation
pass
π§ Advanced Customization
Custom Data Sources
# In services/resume_service.py
def get_custom_context(query):
# Add integration with external APIs
# LinkedIn API, GitHub API, etc.
pass
Analytics Integration
# Add usage tracking
def track_interaction(user_query, response_time):
# Google Analytics, Mixpanel, etc.
pass
Multi-language Support
# In core/config.py
SUPPORTED_LANGUAGES = {
'en': 'English',
'es': 'EspaΓ±ol',
'fr': 'FranΓ§ais',
'de': 'Deutsch'
}
π Deployment Customization
Environment Variables
# .env file
RESUME_OWNER_NAME="Your Name"
RESUME_OWNER_TITLE="Your Title"
CUSTOM_BRAND_COLOR="#your-color"
ENABLE_ANALYTICS=true
Streamlit Configuration
# .streamlit/config.toml
[theme]
primaryColor = "#your-color"
backgroundColor = "#ffffff"
secondaryBackgroundColor = "#f0f2f6"
textColor = "#262730"
π Customization Examples
Example 1: Software Developer Resume
- Technical skills emphasis
- GitHub integration
- Project portfolio showcase
- Code snippet examples
Example 2: Marketing Professional Resume
- Campaign metrics focus
- Social media integration
- Brand awareness metrics
- Creative portfolio links
Example 3: Data Scientist Resume
- ML model showcase
- Research publications
- Data visualization examples
- Technical blog integration
π§ Adding New Features
Feature Development Checklist
- Plan the feature - Define requirements and scope
- Choose the right layer - UI, Services, Core, or Data
- Implement incrementally - Start with core functionality
- Add configuration - Make it customizable
- Update documentation - Document new features
- Test thoroughly - Ensure it works with existing features
- Consider deployment - Update deployment configs if needed
Common Extension Points
- New Export Format: Extend
document_generator.py - Additional Data Sources: Modify
resume_service.py - New UI Components: Add to
ui_components.py - Custom Session Logic: Extend
session_manager.py - New LLM Providers: Add to
llm_providers.py - Configuration Options: Update
core/config.py
π οΈ Development
Development Setup
# Clone and setup
git clone https://github.com/michaelwybraniec/mcp-resume.git
cd mcp-resume
# Create virtual environment
python -m venv venv
source venv/bin/activate
# Install development dependencies
pip install -r requirements.txt
# Run in development mode
streamlit run app.py --server.runOnSave true
Project Structure Overview
mcp-resume/
βββ π app.py # Main Streamlit application
βββ π§ core/ # Configuration and data models
βββ βοΈ services/ # Business logic and integrations
βββ π¨ ui/ # User interface components
βββ π data/ # Resume data files
βββ π¨ utils/ # Utility scripts
Key Development Files
| File | Purpose | Key Functions |
|---|---|---|
app.py | Main entry point | Application initialization, message processing |
core/config.py | Configuration | App settings, constants, model configurations |
services/llm_providers.py | AI Integration | LLM provider implementations |
services/resume_service.py | Data handling | Resume context generation |
ui/ui_components.py | UI Components | Chat interface, modals, styling |
ui/session_manager.py | State management | Session initialization and management |
Adding New LLM Providers
- Extend the provider class in
services/llm_providers.py:
class NewProvider(LLMProvider):
def __init__(self):
super().__init__("new_provider")
def chat_completion(self, messages, model, api_key):
# Implementation here
pass
- Add to provider registry in the same file
- Update configuration in
core/config.py
Testing
# Run the application
streamlit run app.py
# Test different providers
# - OpenRouter: Use free models
# - Ollama: Run locally with `ollama serve`
# - OpenAI: Use your API key
Code Style
- Follow PEP 8 guidelines
- Use type hints where possible
- Add docstrings for functions and classes
- Keep functions focused and single-purpose
β Troubleshooting
Common Issues
π API Key Problems
# Issue: "API Key Required" error
# Solution:
1. Get free API key from https://openrouter.ai
2. Add key in sidebar or Streamlit secrets
3. Ensure no extra spaces in the key
π Python Version Issues
# Issue: Import errors or compatibility issues
# Solution:
python --version # Should be 3.11+
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
π Streamlit Connection Issues
# Issue: App won't start or connection refused
# Solution:
streamlit run app.py --server.port 8501
# Check if port 8501 is available
# Try different port: --server.port 8502
π€ LLM Provider Issues
OpenRouter:
- Ensure API key is valid and has credits
- Try different free models
- Check rate limits
Ollama:
# Ensure Ollama is running
ollama serve
# Install required models
ollama pull llama3.2
ollama pull llama3.1
OpenAI:
- Verify API key is valid
- Check billing and usage limits
- Ensure model is available
π± UI Issues
- Clear browser cache
- Try different browser
- Check console for JavaScript errors
- Ensure stable internet connection
Getting Help
- Check the logs in Streamlit for error messages
- Verify configuration in the sidebar
- Test with different providers to isolate issues
- Check system status indicator in the app
π Contact & Support
- Developer: Michael Wybraniec
- Website: One-Front.com
- LinkedIn: Connect with Michael
- Custom AI Solutions: Contact through One-Front for enterprise implementations
π License
This project is licensed under the MIT License - see the LICENSE file for details.
What this means:
- β Free to use for personal and commercial projects
- β Modify and distribute as needed
- β Private use allowed
- β Attribution appreciated but not required
Usage Guidelines:
- Feel free to fork and customize for your own resume
- Commercial use is permitted
- Please consider giving credit if you find it helpful
- Report issues or contribute improvements via GitHub
π οΈ Recent Updates
- β Modular Architecture: Refactored into 8 focused modules for better maintainability
- π― 88% Code Reduction: Main app now just 180 lines vs original 1,500
- π Improved Documentation: Clear module responsibilities and architecture overview
- π§ Enhanced Testability: Each module can be tested independently
- π Better Scalability: Easy to add features without touching existing code
- π± Maintained All Features: Full functionality preserved in cleaner structure
- π Enhanced README: Modern documentation with comprehensive guides
- βοΈ AI Act Compliance: Complete implementation of EU AI Act compliance framework
- π Advanced Monitoring: Real-time compliance monitoring with automated alerting
- π Audit Procedures: Comprehensive audit framework with standardized checklists
- π Performance Analytics: Advanced analytics with trend analysis and insights
- π Conformity Assessment: Systematic assessment procedures for certification readiness
- π Certification Preparation: Complete document management for regulatory submission
- β Compliance Validation: Automated and manual validation with certification eligibility
π― Roadmap
Planned Features
- Multi-language Support - Support for different languages
- Advanced Analytics - Usage statistics and insights
- Custom Themes - Multiple UI themes and branding options
- API Endpoints - REST API for programmatic access
- Enhanced Export - Multiple document formats (DOCX, HTML, etc.)
- Voice Interface - Speech-to-text and text-to-speech capabilities
- Phase 5: Ongoing Compliance - Continuous compliance maintenance and monitoring
- Compliance Reporting - Automated compliance reports and dashboards
- Regulatory Updates - Automatic updates for regulatory changes
- Third-party Integrations - Integration with compliance management platforms
Contributing
We welcome contributions! Please see our Contributing Guidelines for details.
π Ready to revolutionize resume interactions?
Deploy your AI-powered resume today with professional-grade architecture and full EU AI Act compliance!
π― Why Choose This AI Resume?
- β Fully Compliant - Complete EU AI Act compliance implementation
- ποΈ Professional Architecture - Enterprise-grade modular design
- π Advanced Monitoring - Real-time compliance and performance monitoring
- π Audit Ready - Comprehensive documentation and audit trails
- π Easy Deployment - Deploy to Streamlit Cloud in minutes
- π Free to Use - Open source with MIT license
Built with β€οΈ by Michael Wybraniec