Full-stack team task manager: projects, role-based access (Admin/Member), task assignment, status tracking, and a dashboard with overdue alerts.
- Frontend: React 19 + TanStack Start (TanStack Router + Vite 7) + TypeScript
- UI: Tailwind CSS v4, shadcn/ui, Lucide icons
- State: TanStack Query
- Backend: Lovable Cloud (managed PostgreSQL + Auth, powered by Supabase)
- Validation: Zod (client) + Postgres RLS (server)
- Email/password signup & login
- Create projects (creator becomes Admin automatically)
- Invite teammates by email, assign role (Admin/Member)
- Create tasks with title, description, priority, due date, assignee
- Kanban board: Todo → In progress → Done
- Dashboard: my tasks, projects, in-progress count, overdue count
- Role-based access enforced by Postgres RLS:
- Only project members can read project data
- Only Admins can edit project, manage members, delete tasks
- Assignees and task creators can update their task status
bun install
bun run devApp runs at https://team-task-manager85.lovable.app/. Backend (database, auth) is connected via Lovable Cloud — no extra setup needed.
Environment variables (auto-generated in .env):
VITE_SUPABASE_URLVITE_SUPABASE_PUBLISHABLE_KEYVITE_SUPABASE_PROJECT_ID
profiles— display_name, avatar, email (auto-created on signup)projects— name, description, ownerproject_members— per-project role enum (admin|member)tasks— title, description, status enum, priority enum, assignee, due_date
All tables protected by RLS; helpers is_project_member / is_project_admin are SECURITY DEFINER and locked down to system use only.
Click Publish in the Lovable editor. App goes live at <project>.lovable.app with the backend already wired.
- Connect this repo to your host.
- Build command:
bun run build - Output: standard Vite/TanStack Start build (Cloudflare Workers compatible).
- Set the same
VITE_*env vars in your host's dashboard. - The Lovable Cloud backend stays online and serves your deployed frontend.
Note: the project is built on TanStack Start with a Cloudflare Workers SSR target. For Railway, deploy as a Node service using
bun run build && bun run preview, or front it with a static adapter.