T-Minus Planner is a visual project management tool that helps teams track tasks against a target date using a T-minus countdown system. It provides a clear overview of tasks, deadlines, and team responsibilities.
- Visual Timeline: Displays tasks in a timeline format with T-minus countdown.
- Team-Based Swimlanes: Organizes tasks by team members for better visibility.
- Editable Project Title: Click to edit the project title inline.
- Task Management: Add, edit, and delete tasks easily.
- Progress Tracking: Visual representation of progress towards the target date.
- Configuration Options: Customize team members, target date, and display settings.
- Node.js (v14 or higher)
- npm (Node package manager)
-
Clone the repository:
git clone <repository-url> cd t-minus-planner
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open your browser and navigate to
http://localhost:5173.
-
Enter the task details in the input form:
- Task Name: Required field.
- Subtitle: Optional field.
- Due Date: Required field (select a date and time).
- Team Member: Select from the dropdown.
-
Click the Add Task button to create the task.
- The timeline shows dates across the top and T-minus countdown values.
- Tasks are positioned according to their due dates.
- Edit Task: Click the edit icon to modify task details.
- Delete Task: Click the delete icon to remove a task.
- Click on the project title to edit it.
- Press Enter to save or Escape to cancel.
-
Click the Configure Plan button to open the configuration modal.
-
Adjust the following settings:
- Project Title: Change the name of your plan.
- Target Date: Set the end date for your timeline.
- Team Members: Add or remove team members.
- Display Settings: Choose color themes and toggle weekend visibility.
-
Click Save Configuration to apply changes.
- React: JavaScript library for building user interfaces.
- date-fns: Library for date manipulation.
- react-circular-progressbar: For displaying progress visually.
- Tailwind CSS: Utility-first CSS framework for styling.
src/
├── App.jsx # Main application component
├── components/
│ ├── ConfigModal.jsx # Configuration modal component
├── index.css # Global styles and Tailwind imports
└── main.jsx # Application entry point
- App: Main container component managing the application state and layout.
- EditableTitle: Allows inline editing of the project title.
- TaskForm: Handles task creation with input validation.
- Timeline: Displays the date-based timeline with T-minus countdown.
- Swimlane: Organizes tasks by team member in horizontal lanes.
The application manages several pieces of state:
- Tasks: Array of task objects.
- Target Date: The end date for the project.
- Project Title: The name of the project.
- Team Members: List of team members involved in the project.
The project uses Tailwind CSS for styling with:
- Responsive grid layout
- Consistent spacing
- Modern UI components
- Hover effects
- Clean typography
This project is licensed under the MIT License.
- Thanks to the contributors and the open-source community for their support.