README.md 6.99 KB
Newer Older
ransome1's avatar
ransome1 committed
1
2
# sleek
## sleek is a todo app based on todo.txt, free and open-source. Available for Linux, Windows and MacOS
3
+ [Screenshots](#screenshots)
4
+ [Support sleek](#support-sleek)
ransome1's avatar
ransome1 committed
5
6
7
+ [Get it from Microsoft Store](#get-sleek-from-microsoft-store)
+ [Get it from Snap Store](#get-sleek-from-snap-store)
+ [Get it from Flathub](#get-sleek-from-flathub)
8
+ [Get it from Homebrew](#get-sleek-from-homebrew)
ransome1's avatar
ransome1 committed
9
+ [Get it from Arch User Repository](#get-sleek-from-arch-user-repository)
ransome1's avatar
ransome1 committed
10
+ [Download it](#download-sleek)
11
12
+ [Build it from source code](#build-sleek-from-source-code)
+ [State of development](#sleeks-state-of-development)
13
14
15
+ [Features](#features)
+ [Used libraries](#used-libraries)

ransome1's avatar
ransome1 committed
16
sleek is an open-source todo app that makes use of the todo.txt format. sleeks GUI is modern and simple but still offers a decent set of functions which help users getting things done. sleek is available as a client for Windows, MacOS and Linux.
ransome1's avatar
ransome1 committed
17

18
Users can add contexts, projects, priorities, due dates, recurrences or threshold dates to their todos. These todo.txt attributes can then be used in full-text search, as filters or to group and sort the todo list.
ransome1's avatar
ransome1 committed
19

20
sleek manages and watches multiple todo.txt files continuously for changes, which makes it easy to integrate sleek with other todo.txt apps. Also users can switch to dark mode and choose from multiple languages.
ransome1's avatar
ransome1 committed
21

ransome1's avatar
ransome1 committed
22
Todos with due date or repeating todos will trigger notifications and completed todos can be hidden or archived into separate done.txt files. If users have tons of todos, a compact view can come in handy.
ransome1's avatar
ransome1 committed
23

24
### Screenshots
25
26
![Alt text](assets/screenshots/linux/todo_list.png?raw=true "Screenshot of sleek's main view on Linux")
![Alt text](assets/screenshots/linux/multiline_autocomplete_dark.png?raw=true "Screenshot of sleek's auto complete function and multi line todo feature on Linux")
ransome1's avatar
ransome1 committed
27

28
### Support sleek
29
* Star, fork and watch it on Github.
30
* Review it on <a href="https://sourceforge.net/projects/sleek/reviews" target="blank">SourceForge</a> or <a href="https://www.microsoft.com/store/apps/9NWM2WXF60KR" target="blank">Windows Store</a>
31
* Contribute <a href="https://github.com/ransome1/sleek/issues">bug reports, code improvements or features</a>
32
* Translate sleek into your own language and contribute your translations
ransome1's avatar
ransome1 committed
33

34
### Get sleek from Microsoft Store
ransome1's avatar
ransome1 committed
35
36
You can install sleek from Microsofts Windows Store

37
<a href="//www.microsoft.com/store/apps/9NWM2WXF60KR?cid=storebadge&ocid=badge" target="blank"><img src='https://developer.microsoft.com/store/badges/images/English_get-it-from-MS.png' alt='English badge' width='180'/></a>
ransome1's avatar
ransome1 committed
38

39
### Get sleek from Snap Store
ransome1's avatar
ransome1 committed
40
41
42
43
You can install sleek from Canonicals Snap Store using: `sudo snap install sleek`

[![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/sleek)

44
### Get sleek from Flathub
45
Install sleek from <a href="https://flathub.org/apps/details/com.github.ransome1.sleek" target="blank">Flathub</a> using: `flatpak install flathub com.github.ransome1.sleek`
ransome1's avatar
ransome1 committed
46
47
48

Run it using: `flatpak run com.github.ransome1.sleek`

49
<a href="https://flathub.org/apps/details/com.github.ransome1.sleek" target="blank"><img width='180' alt="Download on Flathub" src="https://flathub.org/assets/badges/flathub-badge-en.png"/></a>
ransome1's avatar
ransome1 committed
50

51
52
53
54
### Get sleek from Homebrew
Install sleek from <a href="https://formulae.brew.sh/cask/sleek" target="blank">Homebrew</a>.
`brew install --cask sleek`

55
### Get sleek from Arch User Repository
56
57
58
Install sleek from <a href="https://aur.archlinux.org/packages/sleek/" target="blank">AUR</a>.
1. Setup <a href="https://github.com/Jguer/yay#installation" target="blank">Yay</a>
2. `yay -S sleek`
ransome1's avatar
ransome1 committed
59

60
### Download sleek
ransome1's avatar
ransome1 committed
61
You can download sleek for Windows, MacOS and Linux from
62
- <a href="https://sourceforge.net/p/sleek/" target="blank">SourceForge</a>
ransome1's avatar
ransome1 committed
63
64
- <a href="https://github.com/ransome1/sleek/releases/latest">Github</a>

65
### Build sleek from source code
ransome1's avatar
ransome1 committed
66
1. Setup <a href="https://docs.github.com/en/github/getting-started-with-github/set-up-git" target="blank">Git</a>, <a href="https://nodejs.org/" target="blank">node.js</a> and <a href="https://yarnpkg.com/getting-started" target="blank">yarn</a>.
67
2. Clone sleek `git clone https://github.com/ransome1/sleek.git` and cd into sleeks directory
ransome1's avatar
ransome1 committed
68
3. Install dependencies `yarn install --production`
ransome1's avatar
ransome1 committed
69
4. Build sleek `yarn build:windows` or `yarn build:linux` or `yarn build:macos`
70

ransome1's avatar
ransome1 committed
71
72
### sleeks state of development
A prioritized backlog of new features and known issues can be found <a href="https://github.com/ransome1/sleek/projects/2">here</a>.
ransome1's avatar
ransome1 committed
73
74
75

### Features
* An existing todo.txt file can be used or a new one can be created
76
* Todos can be enriched and searched for by
77
78
79
80
  - priorities
  - contexts
  - projects
  - due dates
81
  - creation dates
82
83
  - <a href="https://github.com/ransome1/sleek/wiki/Recurring-todos-(rec:)">recurrences</a>
  - <a href="https://github.com/ransome1/sleek/wiki/Deferred-todos-(t:)">thresholds</a>
84
* Todo-List can be grouped and sorted by priorities, due dates, contexts or projects
ransome1's avatar
ransome1 committed
85
* The sorting order can be defined on all 4 levels
86
87
88
89
90
* Todos can be filtered by contexts, projects and priorities
* Todos can be looked up by full-text search
* Autocomplete function suggests available contexts and projects
* <a href="https://github.com/ransome1/sleek/wiki/Keyboard-shortcuts">Keyboard shortcuts following todotxt.net</a>
* Tabindex available
91
* <a href="https://github.com/ransome1/sleek/wiki/Hidden-todos">A todo can be hidden but its attributes will be available in the filter drawer and autocomplete function</a>
92
* Due dates trigger alarms and appear as badges in sleeks icon
ransome1's avatar
ransome1 committed
93
94
95
96
97
* Dark and light mode can be toggled
* A compact view is available
* Completed todos can be bulk archived to a separate done.txt ([name of todo file]_done.txt) file
* Completed todos can be shown or hidden
* Multi line todos can be created
ransome1's avatar
ransome1 committed
98
* Filters can be renamed or deleted by right clicking on them
99
* Filters are sorted alphanummerically
ransome1's avatar
ransome1 committed
100
101
* Hyperlinks are detected automatically and can be clicked using the icon
* A file watcher rereads the todo.txt file if it has been changed
102
* Multiple todo.txt files can be managed and switched between using a tab bar or keyboard shortcuts
103
* Multiple languages are either detected or can be set by hand to
ransome1's avatar
ransome1 committed
104
105
106
107
108
  - English
  - German
  - Italian
  - Spanish
  - French
109
110
  - Simplified Chinese
  - Brazilian Portugese
ransome1's avatar
ransome1 committed
111
  - Japanese
ransome1's avatar
ransome1 committed
112
  - Turkish
113
  - Hungarian
ransome1's avatar
ransome1 committed
114
* sleek can be minimized to tray
ransome1's avatar
ransome1 committed
115
116
117
118
119
120
121
122
123
124
125
126
* Existing todos can be used as templates for new ones

### Used libraries
- Electron: https://github.com/electron/electron
- Electron builder: https://github.com/electron-userland/electron-builder
- Bulma CSS: https://github.com/jgthms/bulma
- Font Awesome: https://github.com/FortAwesome/Font-Awesome
- jsTodoTxt: https://github.com/jmhobbs/jsTodoTxt
- Marked: https://github.com/markedjs/marked
- vanillajs-datepicker: https://github.com/mymth/vanillajs-datepicker
- i18next: https://github.com/i18next/i18next
- Matomo: https://github.com/matomo-org/matomo
127
- chokidar: https://github.com/paulmillr/chokidar
Daniel Weisser's avatar
Daniel Weisser committed
128
- Sugar: https://github.com/andrewplummer/Sugar
129
- PEG.js: https://github.com/pegjs/pegjs