Skip to content

MuhammadTanveerAbbas/loopr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Loopr Logo

Loopr

A focused CRM that thinks with you built for solo founders running high-touch outbound.

Live Demo License TypeScript React Vite Tailwind CSS Supabase


πŸš€ Overview

Loopr is a lightweight, AI-assisted CRM designed specifically for solo founders running high-touch outbound campaigns. Unlike bloated CRMs designed for enterprise sales teams, Loopr focuses on what matters: tracking leads, analyzing responses, and getting daily AI-powered briefings on what to do next.

Built with the philosophy of "calm productivity" β€” no notifications, no streaks, no spam features. Just you and your pipeline.


✨ Features

  • πŸ“Š Sheet & Kanban Views β€” Two views of one pipeline. Edit in place or drag to advance deals.
  • 🧠 AI Daily Briefing β€” Each morning, AI surfaces who to follow up with and why.
  • 🎯 Signal Score β€” Every lead gets a 0–100 score based on engagement signals.
  • πŸ’¬ Reply Analyzer β€” Paste any reply to get sentiment analysis and suggested next steps.
  • πŸ”’ Your Data, Yours Alone β€” Single-tenant architecture. Export to CSV anytime.
  • πŸ“ˆ Pipeline Analytics β€” Live charts showing stage-by-stage conversion and trends.
  • 🎨 Calm by Design β€” No notifications, no streaks, no dark patterns.

πŸ›  Tech Stack

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 OpenAI / Compatible API (configurable)
UI Components Radix UI primitives + custom components
Charts Recharts

πŸš€ Quick Start

Prerequisites

  • Node.js 18+
  • pnpm (or npm/yarn)
  • Supabase account
  • OpenAI API key (for AI features)

Installation

# 1. Clone the repo
git clone https://github.com/MuhammadTanveerAbbas/loopr.git
cd loopr

# 2. Install dependencies
pnpm install

# 3. Set up environment variables
cp .env.example .env.local
# Fill in your values (see Environment Variables section below)

# 4. Run the development server
pnpm dev

# 5. Open in browser
http://localhost:5173

πŸ” Environment Variables

Create a .env.local file in the root directory:

# Supabase
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 Provider (for AI features)
AI_API_KEY=your_openai_api_key
AI_ENDPOINT=https://api.openai.com/v1/chat/completions

Get your keys:


πŸ“ Project Structure

loopr/
β”œβ”€β”€ public/                  # Static assets
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/          # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ layout/          # Layout components (Sidebar)
β”‚   β”‚   β”œβ”€β”€ leads/          # Lead-specific components
β”‚   β”‚   └── ui/             # shadcn/ui-style components
β”‚   β”œβ”€β”€ hooks/              # Custom React hooks
β”‚   β”œβ”€β”€ integrations/       # Supabase client & config
β”‚   β”œβ”€β”€ lib/                # Utility functions & API clients
β”‚   β”‚   β”œβ”€β”€ auth.tsx        # Auth context & hooks
β”‚   β”‚   β”œβ”€β”€ leads-api.ts    # Lead management hooks
β”‚   β”‚   └── signal-score.ts # Lead scoring logic
β”‚   β”œβ”€β”€ routes/             # TanStack Router routes
β”‚   β”‚   β”œβ”€β”€ index.tsx       # Landing page
β”‚   β”‚   β”œβ”€β”€ auth.tsx       # Authentication page
β”‚   β”‚   β”œβ”€β”€ _app.tsx       # Protected app layout
β”‚   β”‚   └── _app.*.tsx     # Dashboard, Leads, Pipeline, etc.
β”‚   β”œβ”€β”€ router.tsx         # Router configuration
β”‚   β”œβ”€β”€ routeTree.gen.ts   # Auto-generated route tree
β”‚   └── styles.css         # Tailwind + custom styles
β”œβ”€β”€ supabase/              # Supabase config
β”‚   └── functions/         # Edge functions
β”œβ”€β”€ .env                   # Environment variables
β”œβ”€β”€ package.json
β”œβ”€β”€ vite.config.ts
β”œβ”€β”€ tsconfig.json
└── README.md

πŸ“¦ Available Scripts

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

🌐 Deployment

This project is deployed on Vercel using TanStack Start + Nitro.

Deploy Your Own

  1. Push your code to GitHub
  2. Import your repository at vercel.com/new
  3. Vercel auto-detects TanStack Start β€” no extra config needed
  4. Add environment variables in the Vercel dashboard
  5. Deploy

πŸ—Ί Roadmap

  • Sheet & Kanban pipeline views
  • AI-powered daily briefings
  • Signal Score for leads
  • Reply analyzer
  • CSV export
  • Team/collaboration features
  • Mobile app
  • Email integration

🀝 Contributing

Contributions are welcome! Feel free to:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

Distributed under the MIT License. See LICENSE for more information.


πŸ‘¨β€πŸ’» Built by The MVP Guy

Muhammad Tanveer Abbas
SaaS Developer | Building production-ready MVPs in 14–21 days

Portfolio Twitter LinkedIn GitHub

If this project helped you, please consider giving it a ⭐

About

A focused CRM that thinks with you built for solo founders running high-touch outbound.

Topics

Resources

License

Stars

Watchers

Forks

Contributors