Architecture

Services, modules et flux de donnees.

Derniere mise a jour: 2026-04-05 11:13

Architecture Guide

Services

  • api: FastAPI + Jinja/HTMX UI + REST API
  • worker: Celery worker for async jobs
  • beat: Celery beat scheduler
  • db: PostgreSQL
  • redis: broker/result backend
  • searxng: self-hosted web search

Modules

  • app/services/company_ingestion.py
  • app/services/domain_resolver.py
  • app/services/web_enrichment.py
  • app/services/contact_strategy.py
  • app/services/contact_enrichment.py
  • app/services/scoring_engine.py
  • app/services/description_generator.py
  • app/services/message_generator.py
  • app/services/export_engine.py

Data flow

  1. Ingest company records into companies.
  2. Resolve probable official domain.
  3. Crawl public pages and extract signals.
  4. Build contact strategy and LinkedIn query.
  5. Operator validates LinkedIn profile URL.
  6. Generate structured description and messages.
  7. Export validated prospects to Odoo CSV.

LinkedIn boundary

LinkedIn is never scraped or automated. Only human-guided search query generation + manual URL assignment.