Skip to content

ASHWIN07026/Task-Management-Application

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Task Management Application

A full-stack Task Management Web Application built using Node.js, Express.js, HTML, CSS, and JavaScript. The application allows users to securely create, update, delete, and track tasks with real-time updates and responsive design.


Features

  • User Registration & Login
  • Authentication & Authorization
  • Secure Signed Tokens
  • Password Hashing using PBKDF2
  • CRUD Operations for Tasks
  • Per-user Task Protection
  • Real-time Updates using Server-Sent Events (SSE)
  • Responsive Desktop & Mobile UI
  • Local JSON Database Persistence

Technologies Used

  • Node.js
  • Express.js
  • HTML
  • CSS
  • JavaScript

Project Structure

Task Manager Project/
│
├── data/
│   └── db.json
│
├── public/
│   ├── index.html
│   ├── app.js
│   └── styles.css
│
├── .env
├── .gitignore
├── package.json
├── package-lock.json
├── README.md
└── server.js

Installation

Clone the repository:

git clone https://github.com/yourusername/task-management-application.git

Go to the project folder:

cd task-management-application

Install dependencies:

npm install

Environment Variables

Create a .env file in the root folder:

JWT_SECRET=your_secret_key_here

Run the Project

npm start

Open:

http://localhost:3000

API Endpoints

Authentication

  • POST /api/auth/register
  • POST /api/auth/login

User

  • GET /api/me

Tasks

  • GET /api/tasks
  • POST /api/tasks
  • PUT /api/tasks/:id
  • DELETE /api/tasks/:id

Real-time Updates

  • GET /api/tasks/stream

Expected Outcomes Achieved

  • Learned Full-stack Application Structure
  • Learned API Integration
  • Learned Dynamic Data Handling
  • Implemented Secure Authentication Workflow
  • Built Responsive Frontend and Backend Integration

Security

Before deploying to production, set a secure token secret:

JWT_SECRET=replace-with-a-long-random-secret

Add .env to .gitignore:

node_modules
.env
data/db.json

Author

Ashwin S

About

A full-stack Task Management Web Application with secure authentication, task CRUD operations, real-time updates, and responsive UI built using Node.js, Express.js, HTML, CSS, and JavaScript.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors