Skip to content

A full-stack task management application with multi-tiered task levels designed for both individuals and teams

Notifications You must be signed in to change notification settings

syuu-syuu/TaskTide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TaskTide

Sync, Focus, Achieve Streamline teamwork and solo efforts to peak efficiency with our task organizer

A task management tool offering private and shared spaces for solo and collaborative work. It provides a structured approach to organizing tasks, with features for setting deadlines, tracking progress, task assignment, and tagging. Potentially includes a Pomodoro-inspired 'Tide Clock' for time tracking and focus enhancement.

We have implemented all basic and extra requirements. Here is the checklist:

Frontend (Responsive Vue.js with Vue Router)

  • A Vue form with at least 4 fields (excluding login)
  • Responsive design with usability at both desktop and mobile screen sizes
  • Vue Router for navigation
  • Video demonstrates usability in desktop and mobile modes

Backend (Node.js with MongoDB)

  • Node.js backend with Express.js
  • MongoDB database for storing non-trivial state
  • REST API && Socket.IO-based server
  • Authenticated users support
  • Admin user role and RBAC for non-admin users, Basic && Premium 👑
  • Load balanced backend with REST or GraphQL API, demonstrating no obvious dependency on global variables
  • Concurrency handling for safe operations
  • Scale-out Socket.IO server layer

Authentication and User Management

  • Multiple authenticated users
  • Admin and non-admin user roles with role-based access control
  • Video demo shows two different user roles logging in and significant features present for one role but absent for another

Testing and Concurrency

  • Basic End-to-End (E2E) test suite demonstrating a basic user flow
  • Video shows a command-line utility trying to hack into the app using curl (unsuccessfully)
  • Video demonstrates concurrent use by at least two users working properly
  • E2E test demonstrating a fail condition in CI/CD pipeline
  • Correct use of Git commits (commit messages, structured history)

CI/CD and Deployment

  • GitLab CI/CD pipeline to build Docker images of the app
  • CI/CD demonstrates enabling a feature change (such as wording on a page)
  • Video demo shows CI/CD doing a Docker build and pushing to a registry

Additional Features (GraphQL, Socket.IO, and Non-trivial Changes)

  • Backend server exposes a GraphQL endpoint /api/graphql
  • Frontend source code includes at least two calls to the GraphQL backend user quickTask
  • Video demo demonstrates load balancing (scale-out backend is used)
  • Codebase shows non-trivial changes over and above class-provided example code

Video Demonstrations

  • All team members speak for at least 10 seconds
  • Video has a good explanation of key parts of the code
  • Video has a good explanation of how concurrency is handled
  • Video demo demonstrates concurrent use by at least two users working properly
  • Video shows logs from separate backend servers demonstrating that load balancing is working (while doing REST)

About

A full-stack task management application with multi-tiered task levels designed for both individuals and teams

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published