The Complete Solution for Agile Teams at Scale
A powerful project management platform for modern agile teams: organizations, workspaces, spaces, projects, teams, sprints, work items, workflows, custom fields, time tracking, docs, and integrations.
π Documentation | π Quick Start | π Report Bug | β¨ Request Feature
|
Personal or Org accounts, multi-workspace, programs, teams, projects |
Stories, Tasks, Bugs, Epics with custom fields & workflows |
Scrum, Kanban, or Hybrid with velocity and burndown |
|
Status flows, transitions, and rules per workspace/space/project |
Estimates vs actuals, timesheets, capacity insights |
Attachments (50MB) and project docs (5GB) with previews |
|
Smart suggestions, auto-docs, code analysis, natural language search |
Repo links, commit sync, AI docs, code Q&A |
Burndown, velocity, usage-based billing, audit logs |
- AI-first: Smart task suggestions, auto-generated documentation, code analysis, and natural language search.
- Enterprise-ready: Organizations, multi-workspace, programs, teams, RBAC permissions.
- Dual account types: Personal accounts for individuals, Org accounts for teams with shared billing.
- Usage-based billing: Flexible metering for traffic, storage, and compute.
- Flexible workflows: Workspace/space/project-level customization.
- Custom fields: Text, numbers, selects, users, dates, currency, labels.
- Built-in time tracking: Estimates vs actuals, timesheets, exports.
- Integration-ready: GitHub, AI services, notifications, storage.
- Self-host friendly: Appwrite backend; full data ownership.
- Modern stack: Next.js 15, TypeScript, Tailwind, Appwrite.
Frontend: Next.js 15 (App Router, RSC), TypeScript, Tailwind CSS, Radix UI, shadcn/ui, Lucide, React Hook Form, Zod, TanStack Query, React Big Calendar, Recharts, Next Themes, Sonner.
Backend: Appwrite (Auth, DB, Storage, Functions, Realtime), Hono for API routes, Next.js Server Actions.
Tooling: ESLint, Prettier, TypeScript strict mode, Git.
- Node.js 18+ (npm/yarn/pnpm/bun)
- Appwrite Cloud or self-hosted Appwrite
git clone https://github.com/yourorg/Fairlx.git
cd Fairlx
npm install # or bun installCreate .env.local with your values:
NEXT_PUBLIC_APP_URL=http://localhost:3000
NEXT_PUBLIC_APPWRITE_ENDPOINT=https://cloud.appwrite.io/v1
NEXT_PUBLIC_APPWRITE_PROJECT=your_project_id
NEXT_APPWRITE_KEY=your_api_key
NEXT_PUBLIC_APPWRITE_DATABASE_ID=your_database_id
# Core Collections
NEXT_PUBLIC_APPWRITE_WORKSPACES_ID=workspaces
NEXT_PUBLIC_APPWRITE_MEMBERS_ID=members
NEXT_PUBLIC_APPWRITE_PROJECTS_ID=projects
NEXT_PUBLIC_APPWRITE_TASKS_ID=tasks
NEXT_PUBLIC_APPWRITE_SPRINTS_ID=sprints
NEXT_PUBLIC_APPWRITE_WORK_ITEMS_ID=work_items
NEXT_PUBLIC_APPWRITE_TIME_LOGS_ID=time_logs
NEXT_PUBLIC_APPWRITE_PERSONAL_BACKLOG_ID=personal_backlog
NEXT_PUBLIC_APPWRITE_CUSTOM_COLUMNS_ID=custom_columns
NEXT_PUBLIC_APPWRITE_DEFAULT_COLUMN_SETTINGS_ID=default_column_settings
NEXT_PUBLIC_APPWRITE_NOTIFICATIONS_ID=notifications
NEXT_PUBLIC_APPWRITE_SUBTASKS_ID=subtasks
NEXT_PUBLIC_APPWRITE_ATTACHMENTS_ID=attachments
NEXT_PUBLIC_APPWRITE_COMMENTS_ID=comments
NEXT_PUBLIC_APPWRITE_GITHUB_REPOS_ID=github_repos
NEXT_PUBLIC_APPWRITE_CODE_DOCS_ID=code_docs
NEXT_PUBLIC_APPWRITE_PROJECT_DOCS_ID=project_docs
# Teams & Programs
NEXT_PUBLIC_APPWRITE_TEAMS_ID=teams
NEXT_PUBLIC_APPWRITE_TEAM_MEMBERS_ID=team_members
NEXT_PUBLIC_APPWRITE_PROGRAMS_ID=programs
NEXT_PUBLIC_APPWRITE_CUSTOM_ROLES_ID=custom_roles
NEXT_PUBLIC_APPWRITE_PROJECT_MEMBERS_ID=project_members
NEXT_PUBLIC_APPWRITE_PROJECT_ROLES_ID=project_roles
# Spaces & Workflows
NEXT_PUBLIC_APPWRITE_SPACES_ID=spaces
NEXT_PUBLIC_APPWRITE_SPACE_MEMBERS_ID=space_members
NEXT_PUBLIC_APPWRITE_WORKFLOWS_ID=workflows
NEXT_PUBLIC_APPWRITE_WORKFLOW_STATUSES_ID=workflow_statuses
NEXT_PUBLIC_APPWRITE_WORKFLOW_TRANSITIONS_ID=workflow_transitions
# Custom Fields
NEXT_PUBLIC_APPWRITE_CUSTOM_FIELDS_ID=custom_fields
NEXT_PUBLIC_APPWRITE_CUSTOM_WORK_ITEM_TYPES_ID=custom_work_item_types
NEXT_PUBLIC_APPWRITE_WORK_ITEM_LINKS_ID=work_item_links
NEXT_PUBLIC_APPWRITE_SAVED_VIEWS_ID=saved_views
# Organizations & Billing
NEXT_PUBLIC_APPWRITE_ORGANIZATIONS_ID=organizations
NEXT_PUBLIC_APPWRITE_ORGANIZATION_MEMBERS_ID=organization_members
NEXT_PUBLIC_APPWRITE_ORGANIZATION_AUDIT_LOGS_ID=organization_audit_logs
NEXT_PUBLIC_APPWRITE_USAGE_EVENTS_ID=usage_events
NEXT_PUBLIC_APPWRITE_USAGE_AGGREGATIONS_ID=usage_aggregations
NEXT_PUBLIC_APPWRITE_USAGE_ALERTS_ID=usage_alerts
NEXT_PUBLIC_APPWRITE_STORAGE_SNAPSHOTS_ID=storage_snapshots
NEXT_PUBLIC_APPWRITE_INVOICES_ID=invoices
# Storage Buckets
NEXT_PUBLIC_APPWRITE_IMAGES_BUCKET_ID=images
NEXT_PUBLIC_APPWRITE_ATTACHMENTS_BUCKET_ID=attachments_bucket
NEXT_PUBLIC_APPWRITE_PROJECT_DOCS_BUCKET_ID=project-docs
# Email Configuration
NEXT_PUBLIC_APPWRITE_SMTP_PROVIDER_ID=your_smtp_provider_id
NEXT_PUBLIC_APPWRITE_EMAIL_TOPIC_ID=your_email_topic_idFull schema and bucket details: see APPWRITE_GUIDE.md.
npm run dev # or bun dev
# open http://localhost:3000Fairlx/
βββ public/ # Static assets
βββ docs/ # Documentation
βββ src/
β βββ app/ # Next.js App Router (auth, dashboard, api, oauth)
β βββ components/ # UI & shared components
β βββ features/ # Feature modules:
β β βββ auth/ # Authentication, signup, login, email verification
β β βββ organizations/ # Organization management & billing
β β βββ workspaces/ # Workspace CRUD
β β βββ spaces/ # Spaces (project containers)
β β βββ projects/ # Projects
β β βββ tasks/ # Tasks & work items
β β βββ sprints/ # Sprint management
β β βββ teams/ # Teams
β β βββ programs/ # Programs
β β βββ members/ # Workspace membership
β β βββ workflows/ # Custom workflows
β β βββ custom-fields/ # Custom fields
β β βββ time-logs/ # Time tracking
β β βββ comments/ # Comments
β β βββ attachments/ # File attachments
β β βββ notifications/ # Notification system
β β βββ github-integration/ # GitHub repo sync
β β βββ ... # Additional features
β βββ hooks/ # Reusable hooks
β βββ lib/ # Appwrite client, RPC, utils, session middleware
β βββ schemas/ # Zod validation schemas
β βββ types/ # Shared types
β βββ config.ts # Environment config constants
βββ CODE_OF_CONDUCT.md
βββ CONTRIBUTING.md
βββ APPWRITE_GUIDE.md
βββ components.json
βββ tailwind.config.ts
βββ next.config.mjs
βββ tsconfig.json
βββ package.json
- Personal Account: Single-user workspace with personal billing
- Organization Account: Multi-workspace teams with shared org-level billing
Organization (Org Account only)
βββ Workspaces
βββ Spaces
β βββ Work Items
βββ Projects
β βββ Sprints
β βββ Tasks
βββ Teams & Programs
- Boards: Scrum, Kanban, Hybrid; WIP limits; swimlanes; sprint metrics.
- Workflows: Custom statuses and transitions per scope; rules, allowed roles, auto-assign.
- Work Items: Stories/Tasks/Bugs/Epics/Subtasks; labels; components; relationships (blocks, relates, duplicates, split, clone, parent/child, causes).
- Custom Fields: Text, number, date/time, select/multi-select, user(s), checkbox, URL, email, currency, percentage, labels; scope to workspace/space/project.
- Time Tracking: Estimates vs actuals; per-user timesheets; capacity/velocity; exports.
- Docs & Files: Attachments up to 50MB; project docs up to 5GB with categories (PRD/FRD/spec/etc.).
- Comments: Threaded, @mentions, edit flag, reply chains.
- Notifications: Assignments, status/priority/due changes, comments, attachments.
- GitHub Integration: Repo links, commit sync, generated docs, Q&A.
- Timeline & Calendar: Gantt-style timelines, calendar for due dates/milestones.
- Analytics: Burndown, velocity, workload, project progress, risk signals.
- Security: RBAC, space visibility, file validation, email verification.
- Smart Task Suggestions: AI analyzes project context to suggest task breakdowns, estimates, and assignees.
- Auto-Generated Documentation: Automatically generate PRDs, technical specs, and release notes from project data.
- Code Analysis & Q&A: Ask questions about your codebase; AI provides answers with file references.
- Natural Language Search: Find tasks, docs, and code using plain English queries.
- Sprint Planning Assistant: AI recommends sprint capacity, identifies risks, and suggests task prioritization.
- Commit Summarization: Auto-generate meaningful commit summaries and changelog entries.
- Duplicate Detection: AI identifies potentially duplicate tasks and suggests merging.
- Effort Estimation: ML-powered story point and time estimates based on historical data.
- Risk Prediction: Proactive alerts for scope creep, deadline risks, and blockers.
Scripts
npm run dev # dev server
npm run build # production build
npm run start # start production
npm run lint # lintGuidelines
- TypeScript strict; explicit types.
- Prefer Server Components; use client components only when needed.
- Use Tailwind utilities and shadcn/ui primitives.
- Validate inputs with Zod; keep components small and composable.
- Use route utilities (
src/lib/route-utils.ts) for safe navigation with ID validation. - Run lint before pushing.
Example
import { buildWorkspaceRoute } from "@/lib/route-utils";
// Safe navigation with validated IDs
const route = buildWorkspaceRoute(workspaceId, "/settings");
router.push(route);- Import repo to Vercel
- Set env vars (see
.env.local) - Deploy
Docker (example)
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "start"]Completed:
- Multi-workspace & organizations
- Scrum/Kanban/Hybrid boards
- Custom workflows & fields
- Time tracking
- Teams & programs
- Work item links
- GitHub integration
- Comments & attachments
- Notifications
- Timelines & analytics
- Usage-based billing foundation
- Dual account types (Personal/Org)
In Progress:
- Advanced reporting dashboard
- Automation rules
- Webhooks
- Mobile app
Planned:
- Jira import/export
- Slack/Discord/Teams integration
- Approvals
- Capacity planning
- Portfolio management
- AI insights
- Custom widgets
- i18n
- Advanced search
- Bulk operations
- 2FA
- Collections: 30+ (workspaces, spaces, space_members, programs, teams, team_members, custom_roles, projects, members, tasks, work_items, sprints, workflows, workflow_statuses, workflow_transitions, custom_columns, default_column_settings, time_logs, subtasks, comments, attachments, notifications, personal_backlog, github_repos, code_docs, project_docs, organizations, organization_members, usage_events, invoices, etc.)
- Buckets: 3 (images, attachments_bucket, project-docs)
Full attribute list, types, required flags, lengths, and indexes: see APPWRITE_GUIDE.md.
- Email verification required (configure SMTP provider & topic in Appwrite).
- RBAC via workspace/member roles and custom team roles.
- Organization-level permissions and audit logs.
- Data encrypted at rest/in transit; secure sessions.
- File validation on uploads; antivirus enabled on buckets (Appwrite settings).
- Route utilities prevent navigation with undefined/invalid IDs.
- Report vulnerabilities privately (not via public issues).
- Docs: APPWRITE_GUIDE.md
- Issues: Bugs | Features
- Discussions: GitHub Discussions
Built with β€οΈ for Agile Teams β β us if this helps!