Skip to content

zerox9dev/logr

Repository files navigation

Freelance CRM

All-in-one CRM for freelancers — time tracking, client management, invoices, and sales funnels.


What is this?

A lightweight CRM built specifically for solo freelancers and small agencies. No bloat, no enterprise features — just the tools you actually need to manage clients, track time, and get paid.

Core Features

Clients

Manage your client base with contact info, tags, notes, and full activity history. Every client has a dedicated profile showing all projects, sessions, invoices, and communication history in one place.

Time Tracking

Start a timer, pick a client and project, stop when done. Supports hourly and fixed-rate billing. Every session is trackable, filterable, and directly linkable to invoices.

Invoices

Generate invoices from tracked sessions in one click. Line items pull directly from your time entries. Export to PDF, send via public share link, track status from draft to paid.

Sales Funnels

Kanban-style pipeline boards to move leads through custom stages. Built for different workflows: sales, onboarding, project delivery, client reactivation. Convert a lead to a client without losing history.

Activity Feed

Log calls, emails, meetings, and notes against any client or lead. Full chronological history per contact.


Tech Stack

Layer Technology
Framework Next.js 14 App Router
Database Supabase (PostgreSQL)
Auth Supabase Google OAuth
UI Radix UI Primitives + Tailwind CSS
Data Fetching TanStack Query v5
Forms react-hook-form + zod
PDF Export @react-pdf/renderer
Drag & Drop dnd-kit
Deploy Vercel

Pages

Route Description
/login Google sign-in
/dashboard Revenue, hours, active projects overview
/clients Client list
/clients/[id] Client profile with full history
/projects All projects
/projects/[id] Project detail with sessions
/tracker Timer + session list
/invoices Invoice list
/invoices/new Create invoice from sessions
/invoices/[id] Invoice detail, PDF export, share link
/funnels Funnel list
/funnels/[id] Kanban board
/leads/[id] Lead card with activities
/settings Account settings, invoice defaults
/share/[token] Public invoice (no auth)

Project Structure

src/
├── app/                  # Next.js App Router (thin wrappers only)
├── entities/             # Domain models, hooks, DB access
│   ├── client/
│   ├── project/
│   ├── session/
│   ├── invoice/
│   ├── lead/
│   ├── funnel/
│   └── activity/
├── features/             # User scenarios
├── widgets/              # Page-level building blocks
└── shared/               # Utils, UI primitives, Supabase client

Architecture follows Feature-Sliced Design. See .docs/CLAUDE.md for full documentation map.


Getting Started

Prerequisites

  • Node.js 18+
  • Supabase project with Google OAuth enabled

Setup

# Install dependencies
npm install

# Copy env file
cp .env.example .env.local

# Fill in your Supabase credentials
# NEXT_PUBLIC_SUPABASE_URL=
# NEXT_PUBLIC_SUPABASE_ANON_KEY=

# Run migrations
# (see .docs/crm-schema.md for SQL)

# Start dev server
npm run dev

Documentation

File Description
.docs/CLAUDE.md Agent entry point, full doc map
.docs/FSD.md Architecture rules
.docs/ENTITIES.md Entity structure patterns
.docs/WEB-ARCHITECTURE.md Data flow, providers, auth
.docs/UI.md UI components guide
.docs/STYLEGUIDE.md Visual style and theming rules
.docs/FORMS.md Forms guide
.docs/crm-schema.md Database schema
.docs/crm-pages.md Pages specification

MVP Scope

This is an MVP. Out of scope for v1:

  • Team / multi-user support
  • Recurring invoices
  • Payment integrations (Stripe etc.)
  • Email sending
  • Mobile app

About

Freelance time tracker for client/project work with CSV and invoice export.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors