Back to portfolio
extracted
2026·Active·live

Crawlswarm

Concepteur & Ingénieur

Une plateforme SaaS de lead generation B2B construite autour de Google Maps comme source initiale. Elle collecte les signaux d'entreprises sur un territoire donné, les enrichit avec les bases publiques de l'État, le site web et les réseaux sociaux de l'entreprise, puis exécute une analyse de positionnement. Une couche d'agents IA affine en continu les stratégies de recherche par domaine au fil de la croissance du dataset.

Architecture : multi-tenant by design, organisée en une couche web/API et des workers dédiés. Les charges sont mises en queue et planifiées pour permettre une scalabilité horizontale sur plusieurs VPS quand le volume augmente.

Stack : Next.js 16 + React 19 (App Router) pour le web et l'API, Better Auth pour l'authentification (Google + email + MFA), PostgreSQL avec Drizzle ORM pour un schéma typé, Inngest pour l'orchestration des jobs, Puppeteer (avec stealth) pour la collecte, Stripe pour la facturation, Sentry pour l'observabilité, Docker Compose pour le runtime.

Intégration : la plateforme alimente le CRM custom d'Initial Infrastructures via API, pour que les équipes commerciales qualifient directement dans leur workflow existant.

Statut : v0 en développement actif, bêta privée sur invitation. Lancement SaaS public à venir.

Dashboard — total leads, quota mensuel, taux d'emails trouvés, et le launcher de scrape Maps
Dashboard — total leads, quota mensuel, taux d'emails trouvés, et le launcher de scrape Maps
Prospects — leads collectés avec catégorie, ville, téléphones, emails et réseaux sociaux, export CSV/JSON
Prospects — leads collectés avec catégorie, ville, téléphones, emails et réseaux sociaux, export CSV/JSON
Analytics — funnel de conversion, répartition des statuts, taux gagnés/contactés/sans réponse
Analytics — funnel de conversion, répartition des statuts, taux gagnés/contactés/sans réponse
Quota — utilisation du plan beta avec breakdown par feature
Quota — utilisation du plan beta avec breakdown par feature
Stack
Next.jsNext.jsReactReactTypeScriptTypeScriptPostgreSQLPostgreSQLDrizzleDrizzleBetter AuthBetter AuthPuppeteerPuppeteerInngestStripeStripeDockerDocker