GrowNet is one growth platform that runs inbound lead capture and outbound cold outreach side by side for small teams. It sits on a spine-first data model: one person is exactly one record, so the two channels can never work the same contact at once.
The problem
Teams that run inbound and outbound on separate tools waste leads. The same person gets cold-emailed while a nurture sequence is already running. No system owns the contact, so the channels step on each other and the prospect ends up with a confusing double-touch.
What I built
Built and verified. The full inbound to outbound loop was run twice as the client, both passes green, and the next build passed. Status is Built, not yet deployed.
How it works
GrowNet came from merging two earlier products, LeadNet (inbound) and ReachNet (outbound), into one contact-spine data model where each person is a single record both channels read and write. The interference problem gets solved in the database rather than the UI. A single-active-automation lock means a contact can have at most one running automation, so a nurture sequence and a cold campaign can never fire on the same person at the same time. An import warm-exclusion guard catches the correlation case right at ingestion: newly imported prospects are held back from outbound if they already exist as warm inbound contacts. On top of the unified funnel sits a Growth Advisor that reads the whole pipeline and surfaces correlation-aware next moves. An onboarding agent reads a company website to pre-write copy and set up sender identity. The design was worked out council-first before any building started. Stack: Next.js, React 19, TypeScript, Drizzle ORM, Postgres, Tailwind, with an indigo/emerald/sky three-channel UI.
Highlights
- Merges LeadNet inbound and ReachNet outbound into one contact-spine data model
- Single-active-automation lock, enforced in the database, blocks channel collisions
- Import warm-exclusion guard holds back prospects who are already warm inbound contacts
- Inbound capture forms and an outbound campaign dispatcher live in one interface
- Growth Advisor reads the whole funnel and surfaces correlation-aware next moves
- Onboarding agent reads a website to pre-write copy and set up sender identity
Let's build yours.
Tell me what you're trying to ship — you'll get a scoped plan and a straight answer.