Skip to content

Repository files navigation

Task Table

Netlify Status

A task management application built with React, TypeScript, Redux Toolkit, MUI Joy UI and Vite.

Styling is based on MUI Joy UI's defaults, with any custom styles applied via the sx prop directly on components (CSS-in-JS).

This project was created to gain hands-on experience with Redux state management, starting from vanilla Redux and later migrating to Redux Toolkit.

Live demo: https://task-table-rtk.netlify.app/

✨ Features

📋 Tasks Tab

A dynamic table where each row represents a task with the following fields:

FieldComponentOptions
TitleInputFree text — task description
StatusSelectTo Do · In Progress · Ready for Review · In Review · Completed
PrioritySelectNone · Low · Medium · High · Urgent
AssigneeAutocompleteChosen from the Members list

Table columns are resizable by dragging the separators in the header.

👥 Members Tab

A list of all team members, which are used as Assignee options in the Tasks table.

Deleting a member automatically unassigns them from every task they were previously assigned to.

🌿 Branches

This project was intentionally built in two stages to compare vanilla Redux with Redux Toolkit:

BranchDescription
redux-legacyOriginal implementation using vanilla Redux (manual action types, action creators, reducers)
mainMigrated implementation using Redux Toolkit (slices)

The redux-legacy branch is preserved as a reference to compare both approaches side by side.

🛠️ Getting Started

Prerequisites

Installation

# Clone the repository
git clone https://github.com/astik-dev/task-table.git
cd task-table
# Install dependencies
npm install
# Start the development server
npm run dev

Open http://localhost:5173 in your browser.

Build for Production

npm run build

About

Task management app built with React, TypeScript, Redux Toolkit, MUI Joy UI and Vite. Features a resizable task table with status, priority and assignee tracking, and a team members manager.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Used by

Contributors

Languages