ALL PROJECTS/MVP100HOURS

Overview

MVP100Hours is AmalAxis's own growth engine, built to run its "Launch your MVP in 100 Hours" studio. It is two complementary Django systems that together form one lead-to-close funnel. At the top of the funnel sits a lead-intelligence service: a marketing landing page whose cookieless beacon silently tracks every visitor, enriches them with IP and company identity, aggregates heatmaps, and captures leads into a CRM — all surfaced through a Next.js analytics admin. At the bottom sits an AI sales cockpit: a Django API that drives an ElevenLabs Conversational-AI cold-caller, runs OpenRouter LLM analysis on every transcript, and works prospects with compliant Smartlead email — orchestrated by an always-on scheduler service. ("100 Hours" is the studio's speed-to-market promise, not a limit on the platform behind it.)

Problem

A productized MVP studio needs a repeatable growth machine rather than a large sales team. It has to attract prospects, identify the anonymous ones, qualify them automatically, and then actually work them — at a volume no small team could reach by hand. Off-the-shelf tools rarely connect anonymous web traffic to AI-driven outreach, and the plumbing between a website visit, a CRM lead, an AI phone call and a compliant follow-up email is exactly where deals leak. The brief was to build one end-to-end engine that captures and enriches every visitor, then engages qualified prospects with AI voice calls and email; that keeps running unattended; that degrades gracefully when an AI provider runs low on credit or an upstream service fails; and that stays observable and auditable from click to booked call.

System Design

How It Works

01/04
01

AI cold-call — from dial to insight

One outbound AI call becomes structured, actionable intelligence without a human reviewing the transcript.

  1. 1A call is placed — single, batch or scheduled — with per-prospect variables handed to the ElevenLabs Conversational-AI agent
  2. 2The prospect flips to calling and a call record is opened; the scheduler later syncs the finished conversation back and hydrates the transcript
  3. 3OpenRouter analyses the transcript into sentiment, intent, interest score, key points, objections and extracted contact fields
  4. 4The insight cascades: it updates the prospect’s stage, schedules a callback, raises ranked action items and logs consent
  5. 5A compliant follow-up email is drafted from the call, ready to review or auto-send from an encrypted mailbox
02

Silent visitor → qualified lead

An anonymous website visit is turned into an enriched, CRM-ready lead in the background.

  1. 1A cookieless beacon registers the session and streams batched pageviews, clicks, scroll depth and form events
  2. 2The server derives a cross-session fingerprint from request signals to re-identify returning visitors
  3. 3Each new visitor is enriched with IP geolocation, ISP/VPN detection and company/email identity, with graceful fallback when a provider is unavailable
  4. 4Click coordinates are aggregated server-side into per-URL heatmaps for the analytics admin
  5. 5A submitted contact or package request is captured as a lead and fanned out to the CRM, with each delivery flagged idempotently
03

Always-on automation scheduler

A dedicated background service keeps the whole funnel moving without anyone pressing a button.

  1. 1A separate scheduler container runs a short-interval loop alongside the API
  2. 2It auto-syncs calls per user, fires due callbacks, and reconciles ElevenLabs campaign batches
  3. 3Due callbacks are claimed with a conditional update before dialing, so overlapping ticks can never double-dial
  4. 4It drains the email outbox, polls IMAP for replies, and materialises recurring call campaigns on schedule
  5. 5Failed calls, campaigns and runs are retried with exponential backoff and separated from terminal failures for manual review
04

Push-to-deploy across two hosts

A push to main ships either system independently, health-gated, with no manual steps.

  1. 1A merge to main triggers that system’s GitLab pipeline
  2. 2CI rsyncs the code to its server, excluding data, media and secrets to protect persistent state
  3. 3It rebuilds the Docker image and brings the compose stack up — the sales system as a web plus scheduler pair
  4. 4Migrations and static collection run inside the container, then the health check is polled with retries before traffic resumes
  5. 5The two systems deploy to separate hosts (DigitalOcean and Hostinger) with their own pipelines, while the frontends ship to Vercel and Netlify

Key Features

  • ElevenLabs Conversational-AI cold-caller — single, batch and scheduled outbound calls with per-prospect personalization
  • OpenRouter LLM transcript analysis — sentiment, seven-way intent, interest score, key and pain points, objections and extracted contact details on every call
  • Silent, cookieless visitor tracking — sessions, pageviews, clicks, scroll depth, form-abandon funnels and server-aggregated heatmaps
  • IP and company enrichment — geolocation, ISP and VPN detection, and company/email identity from three providers, each with graceful fallback
  • Smartlead cold-email with encrypted mailboxes — Fernet-encrypted SMTP/IMAP credentials, IMAP reply polling, a suppression list and CAN-SPAM consent logging
  • Auto-callback and recurring-campaign scheduler — an always-on service that fires due callbacks, reconciles ElevenLabs batches and retries failures idempotently
  • Prospect CRM with AI-assisted CSV import — arbitrary columns mapped to structured fields by the LLM with per-row confidence scoring
  • Analytics admin and GA4 mirror — Recharts dashboards, an interactive world-map choropleth, canvas heatmaps, spreadsheet export and a seven-endpoint Google Analytics mirror
  • Self-serve booking — a public meeting scheduler with double-booking prevention guaranteed at the database level

Outcomes

  • Unified anonymous web traffic and AI outreach into one lead-to-close pipeline for a productized MVP studio
  • Made outreach autonomous — every AI call is transcribed, analysed and turned into a next action without manual review
  • Resilient by design — idempotent scheduling, backoff retries, a graceful AI cost-ladder and health-gated deploys keep automation running unattended
  • Shipped as two Dockerized backends and three frontends across four hosting targets via GitLab push-to-deploy

More work