Rekindo

AI after-sales emails at the right moment.

rekindo.com
Rekindo landing page
Role
Founder, sole engineerJan – Oct 2026
Status
Built to launch, taken offline in 2026
In numbers
1,200 commits · 4 months · 6 languages · 3 integrations
Hosted on
Self-managed Kubernetes on Hetzner
Stack
Django 6HTMXCeleryRedisPostgreSQL 17LiteLLMAWS SES · SNS · SQS · LambdaKubernetes

The problem

Businesses with repeat customers, from salons to garages, lose people who simply forget to come back. Nobody has time to write the "it's been a while" email.

What I built

Booking and order systems send visit events. Rekindo learns each customer's rhythm, notices who is overdue, and drafts a personal email from their history. A person approves, or it sends itself.

Outcome

Idea to a product ready for paying customers in four months, with billing, six languages, and Zapier, Lightspeed and Calendly integrations.

An LLM is only as good as the context you hand it. Most of the work was the data model around the customer, not the prompt.what I took from it

How it works
Rekindo system architecture

Rekindo system architecture. Click to open full size

Decisions

  • Integrations are plain events over an API. Anything that can say "customer X visited today" plugs in the same way, whether it is a booking tool, a webshop or a Zapier zap.
  • Three Celery loops: draft every 30 s, send every minute, release stale claims every 5 min. Workers claim 50 customers at a time and fan the LLM calls out with asyncio, so one slow model call never blocks the queue.
  • Outbound mail through SES with an edge function for open and click tracking. Inbound mail and SES events come back through SNS webhooks, so a reply lands on the right customer's timeline.
  • The model is a row in the database, chosen per brand behind LiteLLM. Switching providers is a setting, not a deploy.
  • One schema, a brand key on every table, and a 404 instead of a 403 when you are not allowed. Nothing leaks, not even the fact that a record exists.

Timeline

  1. Jan 2026Skeleton, brands, events API, customer matching
  2. FebOverdue detection, first drafts, review screen
  3. MarSending, replies, Stripe billing
  4. AprIntegrations, six languages, onboarding
  5. May – OctPolish, marketing site, launch
  6. Late 2026Taken offline