[HN Gopher] Show HN: Wren - simple yet extensible task managemen...
___________________________________________________________________
Show HN: Wren - simple yet extensible task management with CLI,
Telegram, HTTP
Author : yoavm
Score : 97 points
Date : 2024-01-30 14:05 UTC (8 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| yoavm wrote:
| Hey, I built Wren after being a little frustrated with everything
| else. I wanted something that let's me (1) enter tasks as quickly
| as possible, (2) let's me do it on the go, (3) can be easily
| backed up, (4) requires no fiddling around.
|
| I'm super happy with how this turned out. Hopefully someone
| somewhere would also find this useful!
|
| The following is straight from the README:
|
| Wren is simple because every note is one file. The filename is
| the title, and the content is the note's content. This makes it
| very easy to sync tasks between devices, as conflicts can almost
| never happen, even if syncing isn't done real time. The files are
| plain text, so you can just write. If you want a task to repeat
| every Saturday you just prefix it with a cron syntax, e.g. 0 8 *
| * 6 weekly swim, and if you want a task to appear from a specific
| time you just start it with the date, like 2030-01-01 check if
| Wren became super popular.
|
| Wren is advanced because it is very extensible - it comes
| (optionally!) with a Telegram bot that you can chat with to
| manage your notes, and even get AI-driven daily summaries as if
| you had a personal assistant. It also includes a tiny HTTP server
| that you can use to manage tasks using an API or from the
| browser, which can be used for displaying you tasks elsewhere
| (e.g. in your e-reader).
| kova12 wrote:
| How do you take notes when computer is not available? Do you
| just VPN home and connect to the http endpoint, or...
| yoavm wrote:
| Using the telegram bot - you just text it. You could have the
| bot running on some server and sync the tasks from there to
| your computer, but it's really not needed. One of the nice
| things about Telegram bots is that the messages are queued
| until the bot becomes available, meaning I can text my bot on
| the go and the moment my laptop opens all the files are
| created.
| rozenmd wrote:
| That's brilliant.
| jonnyparris wrote:
| Great job shipping this! The telegram interface is a nice
| touch.
|
| Can you expand more on your frustrations were with something
| like Todoist (my personal fav) for meeting your success
| criteria? What are most todo apps getting wrong / conflicting
| with your preferred workflow?
| yoavm wrote:
| thank you :) to begin with, I wanted it open source & local
| first. Anything that wasn't that wasn't really considered.
| most todo apps that passed this criteria were either a pain
| to work from the terminal, or were uncomfortable to use on
| the go (often due to syncing), or forced me to use their
| designated tools when working with the notes.
| karpour wrote:
| This is fantastic, the 3 different interfaces make a lot of
| sense, and having a cli makes it a breeze to plug other stuff
| in! I'll give this a try soon! Is there json output for the cli
| by any chance?
| yoavm wrote:
| Thank you! The CLI doesn't do JSON output for now, curious
| about your use case? I assume you can slap `jq` on it like
| this: `n | jq -R -s -c 'split("\n")[:-1]'`
|
| The HTTP interface will do JSON unless you include `Accept:
| text/html` in your requests.
| freetanga wrote:
| Great job! Last year I switched from Todoist to task warrior
| and taskwarrior-tui. I am looking into TaskNote to extend the
| notes ability.
|
| What would you say is your differentiator? What drove you to
| write this for a non-covered aspiration (out of curiosity)
|
| BTW great idea on Telegram. Might try to replicate for
| Taskwarrior as my mobile set up is iffy (iCloud, a-shell for
| local taskwarrior, iOS shortcuts for a gui on top)
| yoavm wrote:
| Thank you! It's been a long time since I tried Task warrior,
| so I might be quite off. Two main things come to mind: I
| realized that most task management apps offered many features
| that fooled me into spending time on organizing my data
| instead of doing my tasks. Tags, sub-tasks, projects,
| reminders, due dates. For me (and it could be a very personal
| thing) all these features became a hurdle as I was spending
| time trying to figure out how to tag my task or rethinking my
| hierarchies etc. I realized I wanted a system that does less.
|
| The second thing that comes to mind is the extensibility that
| comes for free when every task is a file. I can easily copy
| an email to my todo folder and now it is a task. I can delete
| a task with `rm`. The fact that the notes themselves actually
| have absolutely noting to do with the management system is
| something that I experience as a very nice advantage.
| stefanos82 wrote:
| For a moment I thought it was about wren programming language...
| [1]
|
| [1] https://wren.io/
| samatman wrote:
| That was my assumption as well.
|
| I know that it's basically impossible to name a project without
| some sort of collision with someone else's work, but at the
| same time, it would be absurd to name a library "Ruby" or
| "Python".
|
| I'm not sure what the threshold is, or should be, for that kind
| of thing, but my gut feeling is that Wren (the language) is
| over that threshold. If the author were to type a few more bird
| names into GitHub search, they would discover that, yeah, a
| name collision is basically inevitable, but there are a lot of
| recognizable species names for which it would matter less.
| hanniabu wrote:
| This doesn't look simple at all
| yoavm wrote:
| interesting, why not? i thought it's pretty simple that you can
| create a task with "n your task goes here" and mark it as done
| with "n -d goes", especially knowing that behind the scenes
| it's essentially doing "touch ~/notes/your\ task\ goes\ here"
| and "mv ~/notes/your\ task\ goes\ here ~/notes/done". Which
| simpler notes taking system do you have in mind?
| high_priest wrote:
| Incredible how complicated people can make a simple list or
| relations structure.
|
| It feels like a complicated data exchange system, way beyond the
| task of "task management". How does it improve my life beyond a
| tasks list in my favorite notes app, `Taiga`/`Jira`?
| yoavm wrote:
| What parts of this did you find complicated? I thought that
| placing a plaintext file in a folder and moving it to another
| folder when it's done is pretty simple, but if you find Jira
| simpler, that's amazing!
| dewey wrote:
| Congrats on shipping your idea and even having a polished README.
| I'd contest the "ridiculously simple" though.
|
| I fully understand how task management seems to be such a
| personal subject that every developer wants to re-invent it for
| themselves, but after going through multiple iterations over the
| years I landed on the included Notes.app, which is available on
| all my devices and has bulletproof sync and I will never have to
| install, update or maintain it.
| yoavm wrote:
| Thank you! I have never used Notes.app since it isn't available
| on any of my devices, so I cannot say anything in comparison to
| that.
|
| However, it's interesting that what I see as options for
| extensibility is seen as complex by others. Telegram / HTTP /
| AI can be seen as plugins. You don't have to enable them, and
| in fact their dependencies aren't installed by default. As I
| wrote elsewhere on this thread, I think that the idea of having
| every task as a file living in either the "todo" or the "done"
| folder is pretty simple, using timestamps for future tasks and
| cron syntax for routines is all about not reinventing the
| wheel.
| mbigras wrote:
| This is very cool! I like your approach in your README to include
| many fun and relevant little examples; for example:
|
| > You can use [Wren summary option] to update /etc/motd daily, or
| through the Telegram bot
|
| Bravo! I'll give Wren a try.
| dansalvato wrote:
| Seems like there's a lot of criticism in the comments about this
| not being "simple". When "simple" is used to describe an app, it
| can either mean "easy to use" or "minimal infrastructure". People
| are interpreting it to mean the former, but it's clearly the
| latter.
|
| I use Obsidian for notes and pen and paper for task management
| (Bullet Journal), but I always love poking around at productivity
| apps that value this kind of "simplicity". It's joyful to use my
| computer as a personal tool to do things the way I want to do
| them, rather than being at the mercy of whichever app sucks the
| least. The sad reality is that we're moving ever further away
| from that style of computing, which makes me value apps like
| this.
|
| My one piece of constructive criticism would be to rework
| "Integrations" as "Extensions", maybe each in their own Python
| module that interfaces with a core API. For example, right now I
| see the GPT summary integration as a `get_summary()` function in
| core.py, but it feels like it shouldn't belong there. Spinning
| off the "integrations" into separate extension modules would not
| only help with the messaging of Wren being simple, but they would
| also serve as good examples for users to build their own
| extension modules. Hell, having a Wren extensions folder in
| .config would be awesome, like if you could just drop .py files
| in there to add new extension commands to Wren.
|
| Those are my two cents, keep up the good work!
| yoavm wrote:
| Thank you so much for such an insightful comment! I think you
| touched on some very good points. Generally speaking, the
| Telegram / HTTP integrations are separate, but you're about the
| get_summary() function - that's mainly because it's used both
| in the Telegram bot and in the CLI interface. I love the idea
| of letting extensions live completely separately from the core,
| will think more about it!
| umtksa wrote:
| wow love it This is what I want in obsidian and maybe even an
| ollama integration
| germandiago wrote:
| There is another project with several thousands of stars called
| Wren. It is a scripting language. Maybe a name change should be
| considered.
| wilgertvelinga wrote:
| There is also a carbon offset company called wren, they're even
| Y Combinator alumni: https://www.ycombinator.com/companies/wren
| keb_ wrote:
| There is also a bird called wren that is very popular. A name
| change may be in order so that people don't confuse this
| project with the actual bird:
|
| https://en.m.wikipedia.org/wiki/Wren
| SLWW wrote:
| There is also an oldish animated show (still don't know
| what it's intended audience was) called "Ren and Stimpy",
| Ren sounds far too similar to Wren.
|
| A name change may be in order so people don't confuse the
| bird, the language, or the company, or the notes taking
| application with an "adult" oriented TV show.
| SushiHippie wrote:
| They renamed it from knowts to wren 3 days ago
|
| https://github.com/bjesus/wren/commit/d04f619f8efc6ae2c0831f...
| svilen_dobrev wrote:
| if u want to complicate it :)
|
| > Tasks starting with a YYYY-MM-DD will not appear in the list of
| tasks before their time arrived
|
| it might be useful to have a way to be warned (warmed?) a few
| weeks/days/hours before that something should happen. i.e. put in
| some metadata-first-line about that in the note
|
| just an idea..
| yoavm wrote:
| that's a cool idea, I'll look into it!
| skeptrune wrote:
| I might say "lightweight" instead of simple. Read the op's
| comment and also some of the other criticism and think maybe
| that's a better word. I would say that I've never used other
| notetaking/todo software because it's too "bloated" instead of
| "complicated".
|
| In general this looks Hella cool! I will have to set it up and
| try it. One thing I'd maybe want to PR or add on a fork is a
| Signal integration.The minimal web UI is also huge for me, but
| maybe I'd use the CLI from termux most of the time instead.
|
| Thanks for making and publishing this Yo'av!!
| yoavm wrote:
| Totally right, 100% I should have said lightweight instead of
| simple. I'll blame it on not being a native English speaker ;)
|
| I'd love to add other integrations. Do contact me on the repo
| if you need any help with that!
| seabass-labrax wrote:
| Fun fact: there is more than one bird in the logo. I definitely
| spy > 2 sets of claws :)
| monkeydust wrote:
| I replaced all my task methods years ago with just entering slots
| into my diary. Most are early morning when no one books meetings,
| if the task requires time to think then I put it during the day,
| effectively blocking out time so I can get it done. Not perfect
| for everyone but for me it works. No apps needed.
___________________________________________________________________
(page generated 2024-01-30 23:01 UTC)