Customers

No customers yet

Add your first customer to start tracking time and expenses.

Time Tracking

No sessions yet

Start a time session for a customer to track your hours.

Expenses

No expenses yet

Log your first expense to track costs per customer.

Notes

No notes yet

Add a note for a customer to keep track of important information.

Overview

Total Hours
0h
tracked time
Sessions
0
work sessions
Expenses
€0
total costs
Per Customer
Customer Sessions Worked Time Expenses
Apply a filter to see results

Settings

Supabase Connection

Connection is configured via config.js. Edit that file to change your project URL or key.

Checking connection...
SQL Setup

Run this SQL in your Supabase SQL Editor to create the required tables:

create table customers (
  id uuid primary key default gen_random_uuid(),
  name text not null,
  email text,
  phone text,
  created_at timestamptz default now()
);

create table time_sessions (
  id uuid primary key default gen_random_uuid(),
  customer_id uuid references customers(id) on delete cascade,
  start_time timestamptz not null,
  end_time timestamptz,
  notes text,
  created_at timestamptz default now()
);

create table expenses (
  id uuid primary key default gen_random_uuid(),
  customer_id uuid references customers(id) on delete cascade,
  amount numeric(10,2) not null,
  description text not null,
  expense_date date not null,
  created_at timestamptz default now()
);

create table notes (
  id uuid primary key default gen_random_uuid(),
  customer_id uuid references customers(id) on delete cascade,
  content text not null,
  done boolean default false,
  user_id uuid,
  created_at timestamptz default now()
);

alter table notes enable row level security;
create policy "Users can manage their own notes"
  on notes for all
  using (auth.uid() = user_id)
  with check (auth.uid() = user_id);