Loopr is a CRM for solo founders managing outbound lead pipelines. It provides a Kanban board, signal scoring, AI-generated email drafts, and pipeline tracking.
- Not an enterprise CRM. No team roles, no permission management, no SSO.
- Not a marketing automation platform. No email sending, no sequences, no mass campaigns.
- Not a mobile app. The UI is responsive but there is no native mobile client.
- Not a finished product. Pro and Studio tiers are listed but not available. Some features (CSV import, batch operations, onboarding wizard) were recently added and have not been battle-tested in production at scale.
- Sheet and Kanban views for lead pipeline management
- Signal scoring (0-100) based on engagement recency and reply detection
- AI email draft generation (Groq API, configurable endpoint)
- Daily AI briefing on which leads need follow-up
- Stage tracking with move history
- Soft delete with 30-day trash retention
- CSV import with duplicate detection (by email)
- CSV export of current filtered view
- Batch operations (multi-select leads, bulk stage move, bulk delete)
- Tags and source tracking on leads
- Lead notes and contact logging
- Command palette (Cmd+K) for quick navigation
- Onboarding wizard for new users
- Signal health dashboard with charts
- Activity/audit log viewer
- Single-tenant: each user sees only their data (RLS enforced)
- Free tier is capped at 50 leads
- AI features require an API key (Groq or OpenAI-compatible)
- Email drafts are generated by AI but not sent — you must copy and send manually
- CSV import handles basic columns (name, email, company, deal_value, source) — custom fields are not supported
- Pipeline analytics reflect the current session data only
- No email integration (no IMAP, no send API)
- No SMS integration
- No team/collaboration features
- No webhook or API for external integrations
| Category | Technology |
|---|---|
| Frontend | React 19 + TypeScript + Vite |
| Styling | Tailwind CSS v4 + custom neobrutal design system |
| Routing | TanStack Router |
| State | TanStack React Query |
| Backend | Supabase (Auth + Database + Edge Functions + RLS) |
| AI | Groq API (OpenAI-compatible, configurable endpoint) |
| UI Components | Radix UI primitives + custom components |
| Charts | Recharts |
- Node.js 18+
- pnpm (or npm/yarn)
- Supabase account
- AI API key (Groq or OpenAI)
git clone https://github.com/MuhammadTanveerAbbas/loopr.git
cd loopr
pnpm install
cp .env.example .env.local
# Edit .env.local with your keys
pnpm devThe migrations in supabase/migrations/ must be applied to your Supabase project. These create:
leads,lead_touches,profiles,stage_historytablesdrafts,audit_logstables (for saved drafts and activity logging)restore_leadandbulk_update_leads_stagefunctions- Signal score recomputation trigger
handle_new_userprofile creation trigger
SUPABASE_URL=your_supabase_project_url
SUPABASE_PUBLISHABLE_KEY=your_supabase_anon_key
VITE_SUPABASE_URL=your_supabase_project_url
VITE_SUPABASE_PUBLISHABLE_KEY=your_supabase_anon_key
AI_API_KEY=your_groq_or_openai_key
AI_ENDPOINT=https://api.groq.com/openai/v1/chat/completionsGet your keys:
- Supabase: https://supabase.com
- Groq: https://groq.com
| Command | Description |
|---|---|
pnpm dev |
Start development server |
pnpm build |
Build for production |
pnpm preview |
Preview production build |
pnpm lint |
Run ESLint |
pnpm format |
Format code with Prettier |
Deployed via TanStack Start + Nitro. Compatible with Vercel, Netlify, and Node.js hosting.
- The app has not been tested with more than 200 leads
- CSV import has not been benchmarked beyond 500-row files
- Edge functions (
ai-task,health-check) have not been load-tested - No automated test suite exists beyond the build step
MIT