Next.js application for marketing, app, and admin surfaces
Postgres for contacts, campaigns, enrollments, queue state, and touch history
Clerk for authentication
OpenAI for assisted message drafting
Stripe for billing
Chrome extension for LinkedIn contact capture
The technical design follows the operational model. The queue is the center of the product because the job is not “store more contact data.” The job is to decide what to do next, fast, with enough context to act well.
That is why the app was shaped around workflow state, touch history, and context continuity instead of generic CRM complexity.
The tradeoff is intentional: less generic configurability up front, more operational clarity in the daily workflow.