GitHub - Mukhdoom-Hammad-khan/1st-Semester-Project: A simple task tracker web application built with Flask and SQLite. Features include user authentication, task management (add, edit, delete), task export to CSV, and task categorization. Developed by a group of software engineering students as a semester project. · GitHub
Skip to content

Mukhdoom-Hammad-khan/1st-Semester-Project

Folders and files

Repository files navigation

Task Tracker - University Semester Project

This project is a simple task tracker application built using Flask and SQLite for the backend. The application allows users to register, log in, add tasks, mark tasks as completed, delete tasks, and export tasks as a CSV file. It includes a basic authentication system to ensure secure access to task management features.

Features

User Authentication: Users can register and log in to access their personalized task lists.
Task Management: Users can add tasks, edit their status, and delete tasks.
Task Export: Users can export their tasks to a CSV file.
Task Categories: Tasks can be categorized as Work, Personal, Shopping, or Other.

Technologies Used

Frontend: HTML, CSS (with a custom style for layout)
Backend: Python (Flask Framework)
Database: SQLite
Password Encryption: Flask-Bcrypt
User Authentication: Flask-Login
CSV Export: pandas library for generating CSV files

Project Structure

app.py: Main application file containing routes, models, and logic.
templates/: Contains HTML files for different pages (e.g., login, registration, task list).
static/: Contains the style.css file for custom styling.
tasks.db: SQLite database to store user data and tasks.

Setup Instructions

Clone the repository:

git clone https://github.com/Mukhdoom-Hammad-khan/Semester-Project.git

Navigate to the project directory:

cd task-tracker

Create a virtual environment (optional but recommended):

python -m venv venv

Activate the virtual environment:

On Windows:

venv\Scripts\activate

On macOS/Linux:

source venv/bin/activate

Install dependencies:

pip install -r requirements.txt

Run the application:

python app.py

Access the application by visiting http://127.0.0.1:5002 in your browser.

File Structure

interactive-python-web-app/
├── instance/
│   └── tasks.db
├── static/
│   └── style.css
├── templates/
│   |── index.html
│   |── add_task.html
│   |── base.html
│   |── register.html
│   └── login.css
├── app.py
└── README.md

Group Members & Contributions

Ajwad Rehman: Gave the idea for the project, worked on the backend with Flask (Python), and worked on the database.
Ahmed Raza: Worked on login functionality and index.html.
Mukhdoom Hammad Khan: Worked on base.html and registration functionality.
Muhammad Huzaifa Ali Sulehria: Worked on CSS and add_task.html.

License

This project is licensed under the MIT.

Make sure to replace the link to your GitHub repository and adjust any details if necessary.

About

A simple task tracker web application built with Flask and SQLite. Features include user authentication, task management (add, edit, delete), task export to CSV, and task categorization. Developed by a group of software engineering students as a semester project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors