Skip to content

A console-based to-do list application with user authentication, item management (CRUD), and note sharing features, built using Python, SQLite, and SQLAlchemy.

Notifications You must be signed in to change notification settings

thtkha/project-todo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Console-Based To-Do App

A simple command-line to-do app with user authentication, CRUD operations, and item sharing functionality.

Features

  • User Registration & Login: Users can register and log in securely with password hashing.
  • To-Do List Management: Create, view, and remove to-do items.
  • Item Sharing: Users can share to-do items with others.
  • SQLite Database: Data is stored and managed with SQLite using SQLAlchemy.

Setup

  1. Clone this repository:
git clone https://github.com/thtkha/project-todo.git
cd project-todo
  1. Install dependencies:
make install
  1. Run the application:
make run

Structure

  • auth.py: Handles user authentication (register, login).
  • database.py: Defines the SQLite database schema (User, Item, UserItem).
  • main.py: Entry point to start the app and display the main menu.
  • todo.py: Core logic for managing to-do items and interacting with the database.
  • todo_commands.py: Command design pattern for managing different user actions.

Commands

  • 1: Manage notes (view, create, remove)
  • 2: Share notes with other users
  • 3: Log out
  • 4: Exit the app

About

A console-based to-do list application with user authentication, item management (CRUD), and note sharing features, built using Python, SQLite, and SQLAlchemy.

Resources

Stars

Watchers

Forks