Team Work Platform - Full-Stack Collaboration & Project Management

Jan 30, 2024 min read

Overview

Team Work Platform is a monolithic full-stack collaboration system where one FastAPI application serves both the REST API and the frontend experience. It helps teams organize projects, manage tasks, collaborate through comments and attachments, monitor progress through analytics, and export operational data when needed.

Team Work Platform Dashboard

What makes it different

  • Full-stack in one deployable app: FastAPI serves APIs, Jinja2 templates, static assets, and Swagger documentation from a single Python process.
  • Built for team workflows: Teams, invite codes, projects, task ownership, role-aware access, and project-level organization are all included.
  • Real operational depth: Notifications, task relationships, subtasks, time logging, exports, and analytics make it more than a CRUD demo.

Screenshots

Main Dashboard

Main Dashboard

Dashboard Notifications

Dashboard Notifications

Projects Page

Projects Page

Kanban Board

Kanban Board

Analytics Board

Analytics Board

Key Features

Team collaboration

  • Team management: Create teams, invite members with reusable codes, and manage collaboration boundaries.
  • Project organization: Group work into projects with scoped visibility and cleaner execution flow.
  • Role-aware access: Support for admin, manager, and user permissions.

Task execution

  • Advanced task lifecycle: Create, assign, prioritize, filter, and update tasks across multiple workflow states.
  • Relations and subtasks: Support for dependencies, related tasks, and parent-child task structures.
  • Comments and attachments: Keep communication and context attached to the work item itself.
  • Time logging: Track effort spent on tasks for better reporting and accountability.

Visibility and reporting

  • Notifications: Surface assignment changes, status changes, and due-related events.
  • Kanban workflow: Visualize work across stages for faster team coordination.
  • Analytics dashboard: View productivity and progress insights at team and project level.
  • Export tools: Generate Excel and PDF reports for operational reporting.

Tech Stack

  • Backend: FastAPI, SQLAlchemy 2.0, Pydantic v2
  • Frontend: Jinja2 templates, HTML, CSS, Vanilla JavaScript
  • Auth: JWT authentication with python-jose and Passlib
  • Database: SQLite in development, adaptable to PostgreSQL via configuration
  • Docs & tooling: Swagger UI, Pandas, OpenPyXL, ReportLab

Outcome

This project demonstrates how to build a practical internal platform that combines backend architecture with usable frontend workflows, without splitting the system into separate services too early.

View on GitHub