Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Desktop Note - Daily Task Tracker

A lightweight Windows desktop tool for recording daily tasks and completed times.

Features

  • Add tasks with descriptions and deadlines
  • Mark tasks as completed
  • View task statistics (total, pending, completed)
  • Double-click to toggle task completion
  • Persistent storage using SQLite database

Project Structure

DesktopNote/
├── main.py                 # Application entry point
├── requirements.txt        # Python dependencies
├── README.md              # This file
│
├── ui/                    # UI components
│   ├── __init__.py
│   └── main_window.py    # Main window UI and logic
│
├── models/               # Data models
│   ├── __init__.py
│   └── task.py          # Task data class
│
└── database/            # Database layer
    ├── __init__.py
    └── db.py            # Database operations

Environment Setup

Prerequisites

  • Python 3.7 or higher
  • pip or conda package manager

Installation

  1. Clone or create the project directory

  2. Install dependencies:

    Using pip:

    pip install PyQt5

    Using conda:

    conda install pyqt

    Alternatively, install from requirements.txt:

    pip install -r requirements.txt
  3. Run the application:

    python main.py

    Or if using python launcher:

    py main.py

Database

The application uses SQLite database (tasks.db). The database file will be automatically created in the project directory on first run.

Database Schema

CREATE TABLE tasks (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    description TEXT NOT NULL,
    deadline TEXT,
    created_at TEXT NOT NULL,
    completed BOOLEAN DEFAULT 0,
    completed_at TEXT
);

Usage Guide

  1. Adding a Task:

    • Enter task description in the text field
    • Set a deadline (optional)
    • Click "Add Task" button
  2. Completing a Task:

    • Select a task from the list
    • Click "Mark as Complete" button
    • Or double-click the task to toggle completion status
  3. Deleting a Task:

    • Select a task from the list
    • Click "Delete Selected" button
  4. Viewing Statistics:

    • Total, pending, and completed task counts are displayed at the bottom

Development Notes

  • The UI is built with PyQt5
  • Database operations are handled in database/db.py
  • Task model is defined in models/task.py
  • Main application logic is in ui/main_window.py

Future Enhancements

  • Task categories/tags
  • Priority levels
  • Recurring tasks
  • Notifications/reminders
  • Export/import functionality
  • Dark mode theme

About

这是我自己为了方便记事情,同时要绝对简单又好看的一个桌面小笔记

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages