Skip to content

PlanMate is a command-line task management application built with Kotlin following Test-Driven Development (TDD) and SOLID principles. It supports multiple users, projects, and dynamic task states with a comprehensive audit system.

Notifications You must be signed in to change notification settings

Beirut-squad/PlanMate

Repository files navigation

PlanMate - Task Management Application

PlanMate is a command-line task management application built with Kotlin following Test-Driven Development (TDD) and SOLID principles. It supports multiple users, projects, and dynamic task states with a comprehensive audit system.

Features

User Management

  • Two user types: Admin and Mate
  • Secure password storage using MD5 hashing
  • Admins can create new Mate users

Project Management

  • Support for multiple projects
  • Only Admins can create, edit, and delete projects
  • Each project maintains its own set of tasks

Task Management

  • Dynamic states (not hardcoded)
  • Admins can create/edit states for each project
  • Mates can create/edit/delete tasks within projects
  • Swimlanes UI to display tasks in the console

Audit System

  • Track changes to projects and tasks
  • View change history by project ID or task ID
  • Shows who made changes and when

Technical Approach

  • Built using Kotlin
  • Followed Test-Driven Development (TDD) methodology
  • Applied SOLID principles throughout
  • Developed with a Command Line Interface (CLI) for interaction

Members:


Getting Started

About

PlanMate is a command-line task management application built with Kotlin following Test-Driven Development (TDD) and SOLID principles. It supports multiple users, projects, and dynamic task states with a comprehensive audit system.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 9

Languages