TaskTrail is a lightweight project and task-tracking platform for software teams. Admins and managers use the web dashboard to create projects, organize tasks, assign developers, and monitor delivery. Developers use the Expo mobile app to work through subtasks, post progress updates, log time, report blockers, and move work through code review and testing.
The repository is an npm-workspaces monorepo containing a Next.js dashboard, an Expo React Native application, shared TypeScript domain code, and Supabase migrations.
- Web dashboard: Open TaskTrail
- Android preview build: Download TaskTrail APK
- Admin registration, login, logout, and workspace onboarding
- Role-aware access for admins and managers
- Developer and manager account creation
- Project creation with repository links
- Task creation, prioritization, estimates, due dates, subtasks, and assignment
- Dashboard status metrics and recent tasks
- Task details with subtask progress, time logged, developer updates, and activity
- Persistent developer authentication
- Assigned-task list and task details
- Required subtask completion
- Progress, blocker, time, and link updates
- GitHub issue or pull-request links
- Controlled workflow: start, block, resume, code review, testing, and complete
- Live task refreshes when teammates update work
- Supabase Auth and PostgreSQL
- Row Level Security scoped by workspace and role
- Secure database functions for developer task updates and status transitions
- Automatic profile creation for new Auth users and realtime task publication
- Next.js 14, React 18, and Tailwind CSS
- Expo SDK 54, React Native 0.81, and React 19
- TypeScript and npm workspaces
- Supabase Auth, PostgreSQL, and Row Level Security
- Shared domain types and formatting utilities in
packages/shared
apps/
web/ Next.js admin and manager dashboard
mobile/ Expo developer application
packages/
shared/ Shared domain types and utilities
supabase/
migrations/ Ordered database migrations
seed/ Seed-data notes and future helpers
- Node.js 20 or newer
- npm 10 or newer
- A Supabase project
- Expo Go compatible with Expo SDK 54 for device testing
-
Clone the repository and install dependencies.
git clone https://github.com/Azmeer-59189/TaskTrail.git cd TaskTrail npm install -
Create the local environment file.
PowerShell:
Copy-Item .env.example .envmacOS or Linux:
cp .env.example .env
-
Add the Supabase values to
.env.NEXT_PUBLIC_SUPABASE_URL= NEXT_PUBLIC_SUPABASE_ANON_KEY= SUPABASE_SERVICE_ROLE_KEY= EXPO_PUBLIC_SUPABASE_URL= EXPO_PUBLIC_SUPABASE_ANON_KEY=
The web and mobile public values can reference the same Supabase project. Keep
SUPABASE_SERVICE_ROLE_KEYserver-side and never expose it through anEXPO_PUBLIC_*orNEXT_PUBLIC_*variable. -
In the Supabase SQL Editor, run the files in
supabase/migrationsin filename order.Migration
0004is retained as historical migration history from the original field-service prototype. Migration0005safely supersedes it with the software-team workflow. Existing installations that already ran0004should run only0005next.See Supabase setup for details.
-
In Supabase Authentication URL Configuration, set the local site URL to
http://localhost:3000.
Start the web dashboard:
npm run dev:webOpen http://localhost:3000.
Start the Expo mobile application in a second terminal:
npm run dev:mobileScan the QR code with Expo Go. If Metro has stale cached data, run:
npm run start:clean -w @tasktrail/mobile- Register an admin account on the web and create a workspace.
- Create a project and optionally add its repository URL.
- Create a developer from the Team page and retain the temporary password.
- Create a task with subtasks and assign it to the developer.
- Sign into the mobile app with the developer credentials.
- Start the task, complete subtasks, log progress or time, and send it to code review.
- Move the task through testing and completion while monitoring it from the web portal.
| Command | Purpose |
|---|---|
npm run dev:web |
Start the Next.js development server |
npm run dev:mobile |
Start Expo in offline mode |
npm run typecheck |
Type-check all workspaces |
npm run build |
Validate the shared package and build the web app |
npm run lint |
Run available workspace linters |
TaskTrail currently covers the core software-delivery workflow, live dashboard/mobile refreshes, and in-app notifications: projects, team accounts, task assignment, subtasks, estimates, time logging, developer updates, blockers, GitHub links, code review, testing, and completion. Sprint planning, reporting, and production deployment remain future phases.
- Never commit
.envor real credentials. - Treat the Supabase service-role key as a server-only secret.
- Review Row Level Security policies before production deployment.
- Rotate any credential immediately if it is accidentally exposed.