MCP Resume Server
Fetches resume data from a GitHub gist to provide professional background context to LLMs.
π€ 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": "your.email@example.com",
"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
Related Servers
Screen View
Capture and analyze screenshots using the Claude Vision API.
Portfolio Manager MCP Server
A server providing tools and resources for managing and analyzing investment portfolios.
LearnMCP Server
An MCP server that enhances the Forest application with learning content extraction and summarization capabilities.
Hilanet MCP
Provides HR-related tools for a corporate dystopia.
Agentify
A multi-client AI agent monitoring and control system with automatic task completion detection.
Rework
Integrate AI applications with the Rework platform to manage projects, tasks, workflows, and jobs.
Google Sheets
A server that connects to the Google Sheets API, enabling AI-driven spreadsheet automation and data manipulation.
atlassian-mcp-server
Atlassianβs Remote Model Context Protocol (MCP) Server to allow LLMs to talk to Jira, Confluence, OpsGenie, and many other Atlassian prodcuts
Anki Connect
Manage Anki flashcards and decks via the AnkiConnect plugin.
YOURLS-MCP
Integrates the YOURLS URL shortening service with Claude Desktop.