Skip to main content

Just do it! - 一个简单的命令行待办事项工具

Project description

justdo - Just do it! 🚀

一个用 TDD 方式开发的简单命令行待办事项工具,支持任务优先级管理。

Just do it! - 简单、高效的待办事项管理工具

安装

pip install justdo

使用方法

基础命令

# 添加任务(默认中等优先级)
jd add "购买牛奶"

# 列出所有任务(按 ID 排序)
jd list

# 标记任务为完成
jd done 1

# 删除任务
jd delete 1

# 清空所有已完成的任务
jd clear

优先级功能

# 添加高优先级任务 (1=高, 2=中, 3=低)
jd add "紧急任务" -l 1
jd add "普通任务" -l 2
jd add "不重要" -l 3

# 按优先级排序显示(高优先级在前)
jd list -s p

参数说明

命令 参数 说明
add -l 1/2/3 优先级: 1=高🔴, 2=中🟡, 3=低🟢
list -s p/i 排序: p=优先级, i=ID

### 优先级说明

| 优先级 | Emoji | 说明 |
|--------|-------|------|
| high | 🔴 | 高优先级(紧急重要) |
| medium | 🟡 | 中优先级(默认) |
| low | 🟢 | 低优先级(可延后) |

### 显示示例

```bash
$ jd add "完成文档" -l 1
✓ 已添加任务 [1] 🔴: 完成文档

$ jd add "整理桌面" -l 3
✓ 已添加任务 [2] 🟢: 整理桌面

$ jd list -s p
[1] [ ] 🔴 高优先级任务
[2] [ ] 🟡 中优先级任务
[3] [ ] 🟢 低优先级任务

技术栈

  • Python 3.8+
  • pytest(测试框架)
  • argparse(命令行解析)
  • JSON(数据存储)
  • TDD 开发模式

开发

# 克隆仓库
git clone https://github.com/gqy20/todo-cli.git
cd todo-cli

# 安装开发依赖
pip install -e ".[dev]"

# 运行测试
pytest

# 查看测试覆盖率
pytest --cov=todo

项目结构

do-it/
├── src/
│   └── todo/
│       ├── __init__.py
│       ├── models.py      # 数据模型(TodoItem)
│       ├── manager.py     # 核心业务逻辑(TodoManager)
│       └── cli.py         # 命令行接口
├── tests/
│   └── unit/
│       ├── test_models.py
│       ├── test_manager.py
│       └── test_cli.py
├── pyproject.toml         # 包配置
├── todo.json              # 数据存储(自动生成)
└── README.md

功能命令

命令 说明
jd add <text> [-l 1/2/3] 添加新任务,1=高🔴, 2=中🟡, 3=低🟢
jd list [-s p/i] 列出任务,-s p按优先级,-s i按ID
jd done <id> 标记指定 ID 的任务为完成
jd delete <id> 删除指定 ID 的任务
jd clear 清除所有已完成的任务

测试

项目采用 TDD 开发模式,44 个单元测试全部通过

  • 数据模型测试(15 个)- 包括优先级功能
  • 业务逻辑测试(17 个)- 包括优先级参数
  • CLI 命令测试(12 个)- 包括优先级显示和排序

为什么叫 justdo?

  • 简洁有力 - 两个音节,朗朗上口
  • 寓意完美 - "Just do it!" 正是待办事项的核心精神
  • 命令简短 - jd 两个字母,快速输入
  • 易记易搜 - 用户搜索 "just do" 很容易找到
  • 国际化 - 英语通用,全球用户都能理解

链接

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

justdo-0.1.1.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

justdo-0.1.1-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file justdo-0.1.1.tar.gz.

File metadata

  • Download URL: justdo-0.1.1.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for justdo-0.1.1.tar.gz
Algorithm Hash digest
SHA256 26c54e8c34c494543d9bc5c1ad462ed936442e906977fbaaee4a70b7129050a5
MD5 a9ad5ca74fe6452aea7e6fe93a95926e
BLAKE2b-256 ff5f0efba2671c22623681b48a6c8010dc741d856720263f96b14619dccbd232

See more details on using hashes here.

File details

Details for the file justdo-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: justdo-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for justdo-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 eb9bdec269d442bf15902bd77373b0ca7d744bd52f46703d7cddd7f9bfd15ac0
MD5 d260f07b494f525f26051697ba86d076
BLAKE2b-256 add69d75d8edd3bf63cb1862eb2e8c8a80c7fde7e8725db136e124c5c7f8abc7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page