Skip to content

Commit 38b90ed

Browse files
committed
Update README with correct GPL-3.0 license and cleanup .gitignore
1 parent 0fb9bd3 commit 38b90ed

2 files changed

Lines changed: 69 additions & 135 deletions

File tree

.gitignore

Lines changed: 14 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -1,134 +1,17 @@
1-
# Byte-compiled / optimized / DLL files
2-
__pycache__/
3-
*.py[cod]
4-
*$py.class
5-
6-
# C extensions
7-
*.so
8-
9-
# Distribution / packaging
10-
.Python
11-
build/
12-
develop-eggs/
13-
dist/
14-
downloads/
15-
eggs/
16-
.eggs/
17-
lib/
18-
lib64/
19-
parts/
20-
sdist/
21-
var/
22-
wheels/
23-
pip-wheel-metadata/
24-
share/python-wheels/
25-
*.egg-info/
26-
.installed.cfg
27-
*.egg
28-
MANIFEST
29-
30-
# PyInstaller
31-
# Usually these files are written by a python script from a template
32-
# before PyInstaller builds the exe, so as to inject date/other infos into it.
33-
*.manifest
34-
*.spec
35-
36-
# Installer logs
37-
pip-log.txt
38-
pip-delete-this-directory.txt
39-
40-
# Unit test / coverage reports
41-
htmlcov/
42-
.tox/
43-
.nox/
44-
.coverage
45-
.coverage.*
46-
.cache
47-
nosetests.xml
48-
coverage.xml
49-
*.cover
50-
*.py,cover
51-
.hypothesis/
52-
.pytest_cache/
53-
54-
# Translations
55-
*.mo
56-
*.pot
57-
58-
# Django stuff:
59-
*.log
60-
local_settings.py
61-
db.sqlite3
62-
db.sqlite3-journal
63-
64-
# Flask stuff:
65-
instance/
66-
.webassets-cache
67-
68-
# Scrapy stuff:
69-
.scrapy
70-
71-
# Sphinx documentation
72-
docs/_build/
73-
74-
# PyBuilder
75-
target/
76-
77-
# Jupyter Notebook
78-
.ipynb_checkpoints
79-
80-
# IPython
81-
profile_default/
82-
ipython_config.py
83-
84-
# pyenv
85-
.python-version
86-
87-
# pipenv
88-
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
89-
# However, in case of collaboration, if having platform-specific dependencies or dependencies
90-
# having no cross-platform support, pipenv may install dependencies that don't work, or not
91-
# install all needed dependencies.
92-
#Pipfile.lock
93-
94-
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
95-
__pypackages__/
96-
97-
# Celery stuff
98-
celerybeat-schedule
99-
celerybeat.pid
100-
101-
# SageMath parsed files
102-
*.sage.py
103-
104-
# Environments
105-
.env
106-
.venv
107-
env/
108-
venv/
109-
ENV/
110-
env.bak/
111-
venv.bak/
112-
113-
# Spyder project settings
114-
.spyderproject
115-
.spyproject
116-
117-
# Rope project settings
118-
.ropeproject
119-
120-
# mkdocs documentation
121-
/site
122-
123-
# mypy
124-
.mypy_cache/
125-
.dmypy.json
126-
dmypy.json
127-
128-
# Pyre type checker
129-
.pyre/
1+
# Rust
2+
/target
1303

4+
# IDEs
5+
.idea/
6+
.vscode/
7+
*.swp
8+
*.swo
1319

132-
# Added by cargo
10+
# OS
11+
.DS_Store
12+
Thumbs.db
13313

134-
/target
14+
# Project specific
15+
Agents.md
16+
*.db
17+
*.db-journal

README.md

Lines changed: 55 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,59 @@
11
# TaskIt
22

3-
A simple GUI Task Tracker for task analysis in Rust (GPUI).
3+
A sleek and modern GUI Task Tracker built with Rust and GTK3.
4+
5+
## Features
6+
7+
- **Local-First**: All data is stored locally in a SQLite database.
8+
- **Task Management**: Create, edit, delete, and toggle tasks.
9+
- **Project Management**: Organize tasks into projects with full CRUD support.
10+
- **Date Support**: Set due dates for tasks using an integrated calendar picker.
11+
- **Dynamic Views**:
12+
- **Inbox**: Tasks without a project.
13+
- **Today**: Tasks due today.
14+
- **Upcoming**: Future tasks.
15+
- **Project View**: Filter tasks by project.
16+
- **Search**: Quickly find tasks with the real-time search bar.
17+
- **Theme Support**: Seamlessly toggle between Light and Dark modes.
18+
- **Modern UI**: Clean design using standard system symbolic icons.
419

520
## Architecture
6-
- **Framework**: GPUI
7-
- **Database**: SQLite (Local-first)
8-
- **Target**: Linux Desktop
21+
22+
- **Language**: Rust
23+
- **Framework**: GTK3
24+
- **Database**: SQLite (via `rusqlite`)
25+
- **State Management**: Manual state refresh pattern for robust UI updates.
26+
27+
## Installation
28+
29+
### Prerequisites
30+
31+
Ensure you have the following system dependencies installed:
32+
33+
```bash
34+
# Ubuntu/Debian
35+
sudo apt install libgtk-3-dev
36+
```
37+
38+
### Build and Run
39+
40+
```bash
41+
# Clone the repository
42+
git clone https://github.com/maskedsyntax/taskit.git
43+
cd taskit
44+
45+
# Run the application
46+
cargo run
47+
```
48+
49+
## Usage
50+
51+
- **Add Task**: Type a title in the input box, select an optional date, and press "Enter" or click "Add".
52+
- **Edit Task/Project**: Click the pencil icon to open a rename popover.
53+
- **Delete**: Click the trash icon to remove an item.
54+
- **Search**: Use the search bar in the header to filter tasks by title.
55+
- **Theme**: Click the sun/moon icon in the header to toggle themes.
56+
57+
## License
58+
59+
GPL-3.0

0 commit comments

Comments
 (0)