Skip to content

dasu07988/tasky-task-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

README.md

Tasky — Task Manager Web Application

A full-stack task management application built with HTML, CSS, JavaScript (frontend) and PHP + MySQL (backend API).

📁 Project Structure

taskflow/ ├── frontend/ │ └── index.html ← Complete frontend (HTML + CSS + JS) ├── API/ │ ├── db.php ← Database connection │ ├── auth.php ← Token authentication middleware │ ├── register.php ← User registration │ ├── login.php ← User login │ ├── logout.php ← User logout │ ├── add_task.php ← Add a new task │ └── get_task.php ← Get all tasks for logged-in user └── README.md

🔧 API Endpoints

| Endpoint | Method | Auth Required | Description |

| register.php | POST | No | Register a new user | | login.php | POST | No | Login and receive token | | logout.php | POST | Yes | Logout and invalidate token | | add_task.php | POST | Yes | Add a new task | | get_task.php | GET | Yes | Get all tasks for current user |

Auth header format: Authorization: <your_token>

🚀 Features

  • ✅ User Registration with password strength indicator
  • ✅ User Login with token-based authentication
  • ✅ Secure Logout (token cleared from DB)
  • ✅ Add Tasks
  • ✅ View All Tasks
  • ✅ Search / Filter Tasks
  • ✅ Delete Tasks (client-side)
  • ✅ Session persistence via localStorage
  • ✅ Responsive design (mobile-friendly)
  • ✅ Form validation with error messages

🛠 Tech Stack

| Layer | Technology |

| Frontend | HTML5, CSS3, Vanilla JavaScript | | Backend | PHP | | Database | MySQL | | Dev Server | XAMPP |

⚙️ Setup Instructions

  1. Install XAMPP and start Apache + MySQL
  2. Create database task_app with users and tasks tables
  3. Copy API/ folder to htdocs/API/
  4. Copy frontend/index.html to htdocs/frontend/
  5. Open http://localhost/frontend/index.html

🗄 Database Schema

CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(100) NOT NULL UNIQUE, password VARCHAR(255) NOT NULL, token VARCHAR(255) DEFAULT NULL );

CREATE TABLE tasks ( id INT AUTO_INCREMENT PRIMARY KEY, user_id INT NOT NULL, task TEXT NOT NULL, FOREIGN KEY (user_id) REFERENCES users(id) );

👥 Group Members

Name Student ID Role
Dasuni Jayasundara Frontend
Viraji Gallage Backend/API
Janani Gamage Testing/Docs

About

Task Manager — Group Assignment

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors