project-cb75f904

byJavvaji Santhosh Yadav

``` Build a full-stack Task Management Web App with the following: FRONTEND (React): - Login / Signup page with JWT authentication - Dashboard showing tasks in 3 columns: To Do, In Progress, Done - Add new task modal with: Title, Description, Priority (High/Medium/Low), Due Date - Edit and Delete task buttons - Filter tasks by priority and status - Responsive design (mobile + desktop) BACKEND (Node.js + Express): - REST API: POST /auth/register, POST /auth/login - CRUD endpoints: GET/POST/PUT/DELETE /tasks - JWT middleware for protected routes - User-scoped tasks (each user sees only their own tasks) DATABASE: - PostgreSQL with tables: users (id, email, password_hash), tasks (id, user_id, title, description, status, priority, due_date, created_at) DEPLOYMENT: - Dockerized - Deploy to Stage environment Keep it minimal but fully functional. No extra features beyond what is listed. ```

LandingSignupDashboardLogin
Landing

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 4

project-cb75f904 System Requirements Document

Introduction

This document outlines the system requirements for project-cb75f904, a full-stack Task Management Web App designed to provide users with a streamlined task management experience. The application will be developed using React for the frontend and Node.js with Express for the backend, with data stored in a PostgreSQL database.

System Overview

The Task Management Web App aims to offer users a simple yet effective platform to manage their tasks. The system will feature user authentication, task categorization, and CRUD operations for task management. The application will be responsive, ensuring usability across both mobile and desktop devices. Deployment will be handled using Docker, with a focus on maintaining a minimal yet fully functional system.

Functional Requirements

  • As a User, I should be able to register an account using my email and password.
  • As a User, I should be able to log in using my email and password to access my tasks.
  • As a User, I should be able to view my tasks on a dashboard organized into three columns: To Do, In Progress, and Done.
  • As a User, I should be able to add a new task with a title, description, priority level, and due date.
  • As a User, I should be able to edit the details of an existing task.
  • As a User, I should be able to delete a task that I no longer need.
  • As a User, I should be able to filter tasks by priority and status.
  • As a User, I should be able to view the application on both mobile and desktop devices with a responsive design.
Page 2 of 4

User Personas

  • Standard Authenticated User: This is the only user type in the system. They can create, read, update, and delete their own tasks. Each user operates in isolation, with no access to other users' tasks.

Core User Flows

  1. User Registration and Login:

    • User navigates to the login/signup page.
    • User registers with email and password.
    • User logs in using registered credentials.
    • User is authenticated and redirected to the dashboard.
  2. Task Management:

    • User views tasks on the dashboard.
    • User adds a new task via the modal.
    • User edits or deletes tasks as needed.
    • User filters tasks by priority or status.
Page 3 of 4

Visuals Colors and Theme

  • primary: #1E3A8A (Deep Blue)
  • primary_light: #3B82F6 (Light Blue)
  • secondary: #F59E0B (Amber)
  • accent: #EF4444 (Red)
  • highlight: #FBBF24 (Gold)
  • bg: #F9FAFB (Light Gray)
  • surface: rgba(255, 255, 255, 0.8) (White)
  • text: #111827 (Dark Gray)
  • text_muted: #6B7280 (Muted Gray)
  • border: rgba(209, 213, 219, 0.2) (Light Border Gray)

Signature Design Concept

The homepage will feature an interactive "Task Galaxy" concept. Users will navigate a 3D galaxy where each star represents a task. Clicking a star opens a task card, dragging rotates the galaxy, and hovering highlights task connections. This immersive experience will be built using @react-three/fiber and @react-three/drei for 3D rendering, providing a unique and engaging way to manage tasks.

Interaction Model & Motion Direction

The landing page will utilize a "parallax" interaction model, creating a layered depth effect as users scroll. Decorative elements will move at different speeds, enhancing the storytelling aspect of the app. Internal pages will maintain a "static" model for clarity and ease of use, focusing on task management efficiency.

Page 4 of 4

Non-Functional Requirements

  • The system should ensure secure user authentication using JWT.
  • The application must be responsive and function correctly on both mobile and desktop devices.
  • The backend should handle concurrent user requests efficiently.
  • The database should maintain data integrity and support user-specific task isolation.

Tech Stack

  • Frontend: React
  • Backend: Node.js + Express
  • Database: PostgreSQL
  • Deployment: Docker

Assumptions and Constraints

  • The application will only support a single user type with no additional roles or permissions.
  • Each user will only have access to their own tasks, with no team sharing or guest access.
  • The system will be deployed in a staging environment using Docker.

Glossary

  • JWT: JSON Web Token, a compact, URL-safe means of representing claims to be transferred between two parties.
  • CRUD: Create, Read, Update, Delete, the four basic functions of persistent storage.
  • Responsive Design: An approach to web design that makes web pages render well on a variety of devices and window or screen sizes.
Landing design preview
Landing: Explore Galaxy
Landing: Sign Up
Landing: Sign In
Signup: Create Account
Login: Sign In
Dashboard: View Tasks
Dashboard: Add Task
Dashboard: Edit Task
Dashboard: Delete Task
Dashboard: Filter Tasks