Skip to content

bx0518/checkpointspot-task

Repository files navigation

CheckPoinSpot Task System

This project was created as part of the CheckPointSpot Coding Assignment.

Built with React + TypeScript + Vite, implementing hierachical task dependencies, automatic status propagation, and pagination.


Setup Instructions

  1. Install dependencies
npm install
  1. Start development server
npm run dev
  1. Open in browser

Tech Stack

  • React 19.2
  • TypeScript
  • Vite
  • Tailwind CSS
  • lucide-react (icons)
  • Browser localStorage

Features Implemented

Core

  • Create tasks with: Unique ID, Name, Status (IN PROGRESS, DONE, COMPLETE), Description, Parent Task (Optional)
  • Toggle task status via checkbox
  • Filter tasks by status
  • Prevent circular dependencies
  • Nested hierachical task display
  • Edit task name and parent task
  • Automatic status propagation across dependencies, Parent tasks never revert to IN PROGRESS from DONE or COMPLETE
  • Pagination limited to 20 tasks per page, applies to:
    • Root-level tasks
    • Child/dependency tasks
  • Dependency counters

UI / UX

  • Modal-based task creation & editing
  • Expand / collapse child tasks

Data Storage

  • All task data is stored in browser localStorage
  • React state remains the source of truth
  • Single-user, frontend-only by design

Future Improvements

  • Automated or unit tests for dependency logic
  • Keyboard accessibility improvements
  • Drag-and-drop task reordering
  • Backend + real-time sync (Firebase/AWS)

About

Tasking System creatd as part of the CheckPointSpot Coding Assignment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors