feat: Complete Smart Resume Formatter with R2 and Gemini AI integration
Some checks failed
Profile Linker Docker Build / Build and push Docker image (push) Failing after 3s
Some checks failed
Profile Linker Docker Build / Build and push Docker image (push) Failing after 3s
- Integrated Cloudflare R2 for template storage and converted file management - Added Google Gemini AI for resume parsing and HTML generation - Created backend API endpoints for templates, conversion, and history - Refactored frontend to use real API instead of mock data - Fixed Docker networking issues (IPv6/IPv4) for R2 connectivity - Added resumeService.ts for frontend API integration - Updated Vite configuration for proper asset serving in Docker - Successfully tested with 13 templates from R2 bucket
This commit is contained in:
@@ -12,7 +12,7 @@ class Settings:
|
||||
"""
|
||||
APP_NAME: str = os.getenv("APP_NAME", "ResumeFormatter")
|
||||
API_V1_STR: str = f"/{APP_NAME}/api"
|
||||
PROJECT_NAME: str = "Profile Linker API"
|
||||
PROJECT_NAME: str = "Smart Resume Formatter API"
|
||||
|
||||
# CORS settings
|
||||
BACKEND_CORS_ORIGINS: List[str] = ["*"]
|
||||
@@ -20,6 +20,15 @@ class Settings:
|
||||
# Database settings - using in-memory database by default
|
||||
# In a production environment, you would use a real database connection string
|
||||
DATABASE_URL: Optional[str] = None
|
||||
|
||||
# Gemini AI settings
|
||||
GEMINI_API_KEY: str = os.getenv("GEMINI_API_KEY", "")
|
||||
|
||||
# Cloudflare R2 settings
|
||||
R2_ENDPOINT: str = os.getenv("R2_ENDPOINT", "")
|
||||
R2_ACCESS_KEY_ID: str = os.getenv("R2_ACCESS_KEY_ID", "")
|
||||
R2_SECRET_ACCESS_KEY: str = os.getenv("R2_SECRET_ACCESS_KEY", "")
|
||||
R2_BUCKET_NAME: str = os.getenv("R2_BUCKET_NAME", "e-teams")
|
||||
|
||||
|
||||
settings = Settings()
|
||||
|
||||
Reference in New Issue
Block a user