Taskly
Taskly is a robust task management system designed to streamline project management and team collaboration. Featuring real-time updates, automated reminders, and comprehensive reporting, Taskly ensures seamless task tracking and efficient workflow management, empowering teams to stay organized and productive.
Features
-
Authentication and Authorization: Secure user authentication with role-based access. Users must belong to an organization.
-
Boards and Tasks: Organizations can have boards where tasks are tracked. Tasks can be assigned to users within the organization, with priorities, labels, statuses, start dates, due dates, comments, and attachments.
-
Collaboration: Owners and users can invite others to join their boards.
-
Notifications: Users are notified about task assignments, upcoming deadlines, and comments.
-
Analytics: Weekly reports for organization owners on task completion and performance.
Technologies Used
-
Backend: Node.js, Express.js
-
Database: MongoDB
-
Authentication: JSON Web Tokens (JWT)
-
Validation: Joi
-
Testing: Jest
-
Views: EJS
-
Version Control: Git
Installation
Prerequisites
- Node.js and npm installed
- MongoDB installed and running
- Git installed
Setup
-
Clone the repository:
git clone https://github.com/auscay/Taskly.git
-
Navigate to the project directory:
cd Taskly
-
Install dependencies:
npm install
-
Set up environment variables:
Create a .env
file in the root directory with the following variables:
JWT_SECRET=your_jwt_secret
MONGO_DB_CONNECTION_URL=your_mongodb_connection_url
PORT=your_desired_port_number
SESSION_SECRET=your_session_secret
-
Run the application:
node server.js