Skip to content

johannesteshome/dashtrack-task-management-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 

Repository files navigation

logo

DashTrack Task Management System

Web-based Open Source Team and Project Management Software

forks stars open issues


📔 Table of Contents

🌟 About the Project

DashTrack is a comprehensive task management system built using the MERN stack (MongoDB, Express.js, React.js, and Node.js) along with Socket.io for real-time communication. The system provides a range of features including a calendar view, kanban board view, list view, real-time chat, and notifications, making it a versatile solution for managing project tasks and collaboration.

📷 Screenshots

screenshot

Login Page

screenshot

Dashboard Page

screenshot

Creating a Project

screenshot

Inviting a Team Member via Email

screenshot

Creating a Team

screenshot

Project Members and Teams List

screenshot

Creating a Task

screenshot

Kanban Board View of Tasks

screenshot

Table List View of Tasks

screenshot

Calendar View of Tasks

screenshot

Team Chat

screenshot

Notifications Page View

screenshot

Profile Page

👾 Tech Stack

These are the technologies and frameworks used to build this project.

  • React
  • Redux
  • Node
  • MongoDB
  • Expressjs
  • Socket.IO
  • Postman
  • AntD

🎯 Features

  • User Invitation: The system provides an email-based invitation system, allowing project members to invite colleagues or stakeholders to join a specific project. Invited members receive an email containing an invitation link, which grants them access to the project and its associated tasks.

  • Team Formation: Users can form teams within a project to improve collaboration and streamline task assignment. Team members can be grouped together based on their roles, responsibilities, or areas of expertise. This feature enhances communication and coordination among team members working on the same project.

  • Robust Security Measures: includes features such as one-time passwords (OTPs) for user authentication, ensuring that only authorized individuals can access the system. Additionally, user verification mechanisms add an extra layer of security by validating user identities.

  • Task Assignment: Project managers or team leaders can assign tasks to specific users or teams within the project. This feature streamlines task distribution, ensuring that responsibilities are clearly defined and assigned to the appropriate individuals or groups.

  • Task Priority Setting: Users can set priority levels for tasks to indicate their importance or urgency. This feature helps in organizing and managing tasks effectively, allowing team members to focus on critical tasks and meet project deadlines efficiently.

  • Multiple Tasks View Options

    • Calendar View: The system offers a user-friendly calendar view that allows users to visualize tasks and deadlines in a monthly, weekly, or daily format. It provides an intuitive interface for managing task schedules and tracking progress.

    • Kanban Board View: With the kanban board view, users can organize tasks into different columns such as "To Do," "In Progress," and "Done." This visual representation helps teams to easily manage and track the status of tasks throughout the project lifecycle.

    • List View: The list view provides a straightforward and convenient way to manage tasks in a linear format. Users can create, edit, and prioritize tasks, ensuring an efficient workflow and task management process.

  • Real-time Chat: The integrated real-time chat feature enables seamless communication and collaboration among team members. Users can initiate group chats, create private conversations, share files, and discuss task-related details in real-time.

  • Notifications: The system keeps users informed about important updates and activities through real-time notifications. Users receive notifications for task assignments, due date reminders, comments, and other relevant events, ensuring that everyone stays up to date with the project's progress.

🎨 Color Reference

Color Hex
Primary Color #21BFD4 #222831
Secondary Color #3B82F6 #393E46
Accent Color #F5F5F5 #00ADB5
Text Color #000000 #EEEEEE

🧰 Getting Started

‼️ Prerequisites

This project uses npm as package manager

 npm -v

🏃 Run Locally

Clone the project

  git clone https://github.com/johannesteshome/dashtrack-task-management-system.git

Go to the project directory

  cd dashtrack-task-management-system

Install dependencies for each front-end and back-end

  cd frontend
  npm install

Start the server

  cd backend
  npm install
  npm run dev

🧭 Roadmap

  • Team Chat
  • Kanban View of Tasks
  • Mobile Responsiveness
  • Google Calendar Integration

👋 Contributors

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contributions are always welcome!

🤝 Contact

Yohannes Teshome - @linkedin - [email protected] Yabsera Haile - @linkedin - [email protected] Haymanot Demis - @linkedin - [email protected]

Project Link: Here

💎 Acknowledgements

We would like to thank the following resources and websites that helped us in building this project