Skip to content

TaskPilot is a robust and intuitive project management software, inspired by popular tools like Trello. This app allows teams and individuals to organize tasks, collaborate effectively, and manage projects with ease.

Notifications You must be signed in to change notification settings

Igomigo/TaskPilot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

TaskPilot: Agile Task Management App

TaskPilot is a robust and intuitive task management application built with Node.js and MongoDB, inspired by popular tools like Trello. This app allows teams and individuals to organize tasks, collaborate effectively, and manage projects with ease.

Key Features

  • Boards and Lists: Create and organize tasks into customizable boards and lists.
  • Cards: Detailed task cards with due dates, labels, attachments, and member assignments.
  • Real-time Collaboration: Seamless real-time updates using WebSocket technology.
  • Activity Logging: Track all user actions and changes with a comprehensive activity log.
  • Notifications: Receive real-time notifications for task assignments, comments, and due dates.
  • Integration: Easily integrate with third-party services for file attachments and more.

Technologies Used

  • Backend: Node.js, Express.js, MongoDB with Mongoose
  • Frontend: HTML, CSS, React, TailwindCSS
  • Real-time Updates: Socket.io
  • Queue Management: Bull for handling background jobs
  • Security: JWT for authentication, bcrypt for password hashing
  • Deployment: vercel/client, render/server, AWS/Azure/GCP for cloud deployment

Getting Started

Prerequisites

Ensure you have the following installed on your local development environment:

  • Node.js
  • npm (Node Package Manager)
  • MongoDB

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/taskPilot.git
cd taskPilot
  1. Install dependencies:
npm install
  1. Set up environment variables:

    Create a .env file in the root directory and add the following variables:

MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
PORT=3000
  1. Run the development server:
npm run dev

The server will start on http://localhost:3000.

Usage

User Authentication

  • Register: Create a new user account.
  • Login: Authenticate with existing user credentials.
  • Profile: View and update user profile.

Board Management

  • Create Board: Create a new board for organizing tasks.
  • Update Board: Update board details.
  • Delete Board: Delete a board.
  • Add/Remove Members: Manage board members.

List Management

  • Create List: Create a new list within a board.
  • Update List: Update list details.
  • Delete List: Delete a list.
  • Reorder Lists: Change the order of lists within a board.

Card Management

  • Create Card: Create a new card within a list.
  • Update Card: Update card details (title, description, due dates, labels, etc.).
  • Delete Card: Delete a card.
  • Assign Members: Assign members to a card.
  • Add Attachments: Attach files to a card.
  • Comments: Add and view comments on a card.

Activity Log

  • Track Actions: Log and view actions performed on boards, lists, and cards.
  • Real-time Updates: Receive real-time updates on activities.

Notifications

  • Real-time Notifications: Receive instant notifications for task assignments, comments, and due dates.

Contribution

Contributions are welcome! Follow these steps to contribute:

  1. Fork the repository:

    Click on the 'Fork' button on the top right of the repository page.

  2. Clone your fork:

git clone https://github.com/yourusername/taskPilot.git
cd/taskPilot
  1. Create a branch:
git checkout -b feature-name
  1. Make your changes and commit them:
git add .
git commit -m "Add your commit message here"
  1. Push to your fork:
git push origin feature-name
  1. Submit a pull request:

    Go to the original repository and click on 'New Pull Request' to submit your changes for review.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

About

TaskPilot is developed and maintained by Igomigo Fatai Victor. It was created as a project to showcase skills in full-stack development and provide a powerful tool for project management and collaboration.


About

TaskPilot is a robust and intuitive project management software, inspired by popular tools like Trello. This app allows teams and individuals to organize tasks, collaborate effectively, and manage projects with ease.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages