Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

TamerOnLine/CVEngine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

1 Commit

Repository files navigation

๐Ÿงพ fastapi-streamlit-template

An advanced Interactive Resume Builder built with FastAPI (backend) and Streamlit (frontend).
It generates elegant, two-column resumes with full Arabic (RTL) support, dynamic themes, and modular sections.


๐Ÿง  Project Concept

fastapi-streamlit-template is an interactive web system designed to help users create, customize, and export professional resumes as PDF files.
It seamlessly combines a FastAPI-powered backend for PDF generation with a Streamlit-based frontend for real-time editing and customization.

Users can:

  • Fill in personal and professional data using an intuitive interface.
  • Choose from multiple modern themes.
  • Generate a resume instantly in PDF format.
  • Support Arabic, English, and German text.
  • Save and reuse profile data anytime.

โš™๏ธ Technical Overview

1. Backend (FastAPI)

  • Generates dynamic PDFs using ReportLab.
  • Modular structure of "blocks" (e.g., header, projects, skills, education, languages).
  • Full RTL and Arabic font rendering.
  • Customizable themes and color palettes.
  • Local asset system for fonts and icons (no external dependencies).

2. Frontend (Streamlit)

  • Multi-tab interface for editing sections:
    Basic Info, Skills, Projects, Education, Languages, Headshot, etc.
  • Interactive preview and instant generation.
  • Communicates directly with FastAPI through REST endpoints.

3. Themes System

  • Configurable .json files defining colors, borders, fonts, and layout.
  • Predefined themes: default, modern, clean-white, bold-header, bold-panel.

4. Profiles & Outputs

  • Automatically saves user profiles in profiles/.
  • Stores generated PDF files in outputs/.

โœจ Key Competitive Features

Feature Description
๐ŸŽจ Two-column Layout Professional balance between information and design.
๐ŸŒ Multilingual Support Arabic (RTL), English, and German text rendering.
๐Ÿงฑ Modular PDF Blocks Easily add or modify sections like Projects, Skills, or Contact Info.
๐Ÿ–ผ๏ธ Icons & Images Support Uses local assets for reliability and customization.
๐Ÿ’พ Profile Persistence Save and load user data with JSON profiles.
๐Ÿ”ง FastAPI ร—ใฐใค Streamlit Integration Real-time editing with seamless backend generation.

๐Ÿš€ Quick Start

# 1๏ธโƒฃ Install dependencies
pip install -r requirements.txt
# 2๏ธโƒฃ Run backend (FastAPI)
uvicorn api.main:app --reload
# 3๏ธโƒฃ Run frontend (Streamlit)
streamlit run streamlit/app.py

๐Ÿ’ก Potential Use Cases

  • ๐ŸŽ“ Students & Job Seekers โ€” Create multilingual, modern resumes.
  • ๐Ÿข Recruitment Agencies โ€” Internal resume generator for applicants.
  • ๐Ÿง‘โ€๐Ÿซ Educational Platforms โ€” Help students build their first CVs.
  • ๐Ÿ’ป Developers & Freelancers โ€” Professional templates for portfolio resumes.

๐Ÿงฎ Economic & Feasibility Analysis

Aspect Assessment
๐Ÿ’ฐ Development Cost Low to medium โ€” Python-based stack.
โš™๏ธ Operational Cost Very low โ€” deployable on Render, Hugging Face, or local servers.
๐Ÿ“ˆ Monetization Potential High โ€” can be turned into a SaaS platform (custom themes, premium exports).
๐Ÿ‘ฅ Target Audience Job seekers, universities, HR platforms, and freelancers.

๐Ÿš€ Future Development Opportunities

  1. Add user authentication and PostgreSQL-based persistence.
  2. Create a dashboard to manage multiple resumes.
  3. Implement a real-time visual editor (WYSIWYG).
  4. Allow company branding and digital signatures in PDFs.
  5. Build a React or Flutter frontend alternative.
  6. Integrate with LinkedIn API to auto-import profile data.
  7. Add AI-based resume analysis and improvement suggestions.

๐Ÿงฉ Evaluation Summary

Criteria Score Notes
๐Ÿ’ก Innovation โญโญโญโญโ˜† Unique integration of FastAPI and Streamlit for resume creation.
๐Ÿ’ผ Feasibility โญโญโญโญโญ Highly achievable and scalable.
โš™๏ธ Technical Stability โญโญโญโญโญ Well-structured modular codebase.
๐Ÿ–ฅ๏ธ Usability โญโญโญโญโ˜† Simple and intuitive UI.
๐Ÿš€ Scalability โญโญโญโญโญ Easily extendable to a multi-user SaaS model.

๐Ÿ“‚ Project Structure

fastapi-streamlit-template/
โ”œโ”€โ”€ api/ # FastAPI backend (PDF generation)
โ”‚ โ”œโ”€โ”€ pdf_utils/ # Fonts, icons, blocks, and themes loader
โ”‚ โ”œโ”€โ”€ routes/ # API endpoints
โ”‚ โ””โ”€โ”€ utils/ # Helper parsers
โ”œโ”€โ”€ streamlit/ # Frontend tabs & UI logic
โ”œโ”€โ”€ themes/ # Theme configuration files (.json)
โ”œโ”€โ”€ outputs/ # Generated PDFs
โ”œโ”€โ”€ profiles/ # Saved user profiles
โ”œโ”€โ”€ requirements.txt
โ”œโ”€โ”€ LICENSE
โ””โ”€โ”€ README.md

๐Ÿ“œ License

Licensed under the MIT License โ€” ยฉ 2025 Tamer Hamad Faour

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle ใซใ‚ˆใฃใฆๅค‰ๆ›ใ•ใ‚ŒใŸใƒšใƒผใ‚ธ (->ใ‚ชใƒชใ‚ธใƒŠใƒซ) /