How asiifdev/business-leads-ai-automation works
Prospex is a self-hosted GTM platform whose main workflow is creating a campaign, queuing Google Maps discovery, scoring leads, generating personalized outreach, and managing results in a CRM. The dashboard exposes campaign, lead, analytics, export, workspace, and integration features through a NestJS API backed by Prisma. The queue-to-worker and AI processing stages are documented in the README, but their internal calls are not shown in the sampled worker source, so those links are identified as documented rather than inferred from imports.
Main entry points: (dashboard) Web dashboard · scraper.processor.ts Scrape and scoring worker · prisma.service.ts PostgreSQL data · scraper.controller.ts Scrape job API
Components 18
User experience
- Web dashboard
apps/web/src/app/(dashboard) - Sign-in screens
apps/web/src/app/(auth)
Identity and workspace
- Authentication API
apps/api/src/auth/auth.service.ts - Workspace management
apps/api/src/workspace/workspace.controller.ts
Lead discovery
- Scrape job API
apps/api/src/scraper/scraper.controller.ts - Scraper queue
apps/api/src/scraper/scraper.controller.ts - Scrape and scoring worker
apps/api/src/scraper/scraper.processor.ts - Google Maps
- Lead intelligence
apps/api/src/ai/lead-intelligence.service.ts - Outreach generation
apps/api/src/ai/marketing-ai.service.ts
CRM and campaigns
- Campaign management
apps/api/src/campaigns/campaigns.service.ts - Lead CRM
apps/api/src/leads/leads.service.ts
Insights and platform
- PostgreSQL data
apps/api/src/prisma/prisma.service.ts - Analytics
apps/api/src/analytics/analytics.service.ts - Lead export
apps/api/src/export/export.service.ts - API keys and integrations
apps/api/src/settings/settings.service.ts
Other components
- GTM user
- OpenAI-compatible provider
Connections 23
- GTM user → Web dashboard: uses
- GTM user → Sign-in screens: signs in
- Sign-in screens → Authentication API: authenticates
- Web dashboard → Campaign management: manages campaigns
- Web dashboard → Scrape job API: starts scraping
- Scrape job API → Campaign management: loads campaign
apps/api/src/scraper/scraper.controller.ts - Scrape job API → Scraper queue: enqueues job
apps/api/src/scraper/scraper.controller.ts - Scraper queue → Scrape and scoring worker: dispatches job
apps/api/src/scraper/scraper.controller.ts - Scrape and scoring worker → Google Maps: scrapes places
- Scrape and scoring worker → Lead intelligence: scores leads
- Scrape and scoring worker → Outreach generation: generates outreach
- Lead intelligence → OpenAI-compatible provider: uses AI
- Outreach generation → OpenAI-compatible provider: generates content
- Scrape and scoring worker → PostgreSQL data: stores results
- Web dashboard → Lead CRM: manages lead lifecycle
- Lead CRM → PostgreSQL data: reads and updates
- Web dashboard → Analytics: views analytics
- Analytics → PostgreSQL data: queries metrics
- Web dashboard → Lead export: exports leads
- Lead export → PostgreSQL data: reads leads
- Web dashboard → Workspace management: manages workspace
- Web dashboard → API keys and integrations: configures integrations
- Authentication API → PostgreSQL data: persists accounts
apps/api/src/auth/auth.service.ts