Retour

PortfoliA

Plateforme d'identite professionnelle

Voir le site
React/ViteFastAPIGeminiChromaDBPostgreSQLDockerCloudflare R2Sentry

Contexte

Un professionnel doit maintenir son CV, son LinkedIn, son portfolio, ses lettres de motivation — et recommencer à chaque mise à jour. L'information est dispersée, répétitive, jamais synchronisée.

Le problème

Comment centraliser l'identité professionnelle en un seul endroit et générer automatiquement les différentes sorties (CV, portfolio web, recherche d'emploi) ?

Solution technique

PortfoliA est une plateforme d'identité professionnelle unifiée, développée en équipe de 5 dans le cadre d'un projet EFREI.

Architecture

  • Frontend : React 18, Vite 5, TypeScript, Tailwind, Zustand, Framer Motion
  • Backend : FastAPI, SQLAlchemy 2, PostgreSQL, Alembic
  • IA : Gemini (génération), ChromaDB (embeddings/recherche sémantique)
  • Imports : GitHub API, LinkedIn PDF parsing
  • Infra : Docker Compose, Cloudflare R2, Sentry

Fonctionnalités clés

  • Profil riche : expériences, formations, projets, compétences, langues, certifications
  • Import depuis LinkedIn (PDF) et GitHub
  • Génération de CV (templates LaTeX)
  • Portfolio web hébergé et personnalisable
  • Recherche d'emploi assistée avec matching sémantique
  • Génération de lettres de motivation par IA
  • Scraping d'offres (France Travail, Hiring.cafe)
  • Système de crédits et gamification
  • Module B2B (écoles, entreprises, cohortes)

Points techniques notables

  • Embeddings Gemini + ChromaDB pour la recherche sémantique d'offres
  • Rendering PDF via WeasyPrint/Playwright
  • Store Zustand découpé en slices thématiques
  • ~50 modules de routes backend