[HN Gopher] Treesheets: cross-platform, free-form data organizer...
___________________________________________________________________
Treesheets: cross-platform, free-form data organizer app
Author : open-source-ux
Score : 316 points
Date : 2021-06-24 07:40 UTC (15 hours ago)
(HTM) web link (strlen.com)
(TXT) w3m dump (strlen.com)
| discreteevent wrote:
| "It's like an outliner, but in more than one dimension."
|
| That's what makes mind maps so good (along with the hierarchy).
| Aardappel wrote:
| I actually wrote TreeSheets after I became a heavy user of
| mindmaps, and found the information density and organizational
| abilities to be very lacking. As well as rendering/editing
| speed for larger maps (in freemind).
|
| Mindmaps look very 2D, but essentially its just a left and a
| right tree, with no other horizontal organizational methods.
| TreeSheets truely lets you create any 2D hierarchy you can
| dream of.
| dang wrote:
| Some past related threads:
|
| _TreeSheets: Free Form Data Organizer_ -
| https://news.ycombinator.com/item?id=15057392 - Aug 2017 (58
| comments)
|
| _TreeSheets: Free-Form Data Organizer_ -
| https://news.ycombinator.com/item?id=11247372 - March 2016 (28
| comments)
|
| _TreeSheets - Open Source Free Form Data Organizer_ -
| https://news.ycombinator.com/item?id=10052484 - Aug 2015 (1
| comment)
|
| _Treesheets finally became open source_ -
| https://news.ycombinator.com/item?id=5877145 - June 2013 (4
| comments)
|
| _TreeSheets, a programmable spreadsheet /mindmap/PIM crossover_
| - https://news.ycombinator.com/item?id=3394418 - Dec 2011 (3
| comments)
| eyan wrote:
| No mention of XMind yet. So here it is: https://www.xmind.net/
| khimaros wrote:
| XMind is no longer open source. another option is kitty and the
| accompanying vscode extension.
| dr_kiszonka wrote:
| Would you mind sharing a link? I can't anything besides
| kittens on trees, kitten VSCode themes, and kittens for the
| terminal.
|
| Also, XMind looks very pretty.
| Aardappel wrote:
| Author of TreeSheets here, AMA.
| dynm wrote:
| This is probably a stupid question, but how do you create the
| "trees" like you see in the screenshots? I can easily create
| hierarchical grids, which is great, but I can't figure out how
| to make a mind-map type graph.
| dynm wrote:
| Nevermind, I get it, you just change the rendering method.
| Very cool, I love that you can change the visualization
| method without changing the data structure!
| bsg75 wrote:
| Does the CI build Windows binaries? I could not find them at
| https://github.com/aardappel/treesheets/actions
| Aardappel wrote:
| Yup, even with or without installer, see last run here: https
| ://github.com/aardappel/treesheets/actions/runs/9514897...
| mikewarot wrote:
| I see an interesting spreadsheet that is actually a directed
| graph of some kind. Are there cell addresses hidden somewhere?
| Can this be used as a spreadsheet?
| Aardappel wrote:
| It's not a DAG though, it is purely a tree (no shared
| children). There are no cell addresses.
|
| You can kinda sorta use it as a spreadsheet, but it is pretty
| limited currently, see example here http://strlen.com/treeshe
| ets/docs/images/screenshots/screens... or also in the
| tutorial.
| mikewarot wrote:
| Looking through the source I see that a cell can contain a
| grid, which is a collection of cells, and those can nest.
|
| I see why you don't want to worry about addressing cells,
| it would kill a lot of the utility of the program.
|
| What are the tradeoffs in your mind?
| Aardappel wrote:
| I guess I always found the way traditional spreadsheets
| address cells very clumsy, especially with hidden
| formulas, and I enjoy inventing new ways of programming
| :) I can't claim this is better yet, since I haven't used
| it that much. I like the visible formulas as a
| programmer, but I could imagine others don't.
| tradesurplus wrote:
| Looks like it would be very very cool with some attention to the
| UX and regular updates.
| Aardappel wrote:
| It's one of my 10 or so side projects. Sadly while TreeSheets
| is pretty popular with users, it doesn't attract a lot of
| programmers to contribute (probably my ancient looking code!)..
| more of them would help.
| rajandatta wrote:
| What is the technical foundation - language, libraries etc?
| Aardappel wrote:
| C++ and wxWidgets
| wilsonrocks wrote:
| I'd forgotten all about this and used it for something once but I
| can't remember what now, but I liked it.
| jrm4 wrote:
| Heavy http://zim-wiki.org user here, but I do recall trying this
| out at some point and I can see a few use cases. Before I go
| digging, I seem to be seeing different opinions on how good of a
| "spreadsheet" type tool it is.
|
| Specifically (right now), I'm curious as to what kind of math
| it's capable of? Right now I'm playing around with some
| cryptocurrency and I'm looking to play around with some custom
| views of prices and such, and I'm not quite sure how I want it to
| look; does this seem like a possible place to check it out?
| Aardappel wrote:
| I wouldn't expect to do anything much more complicated than
| http://strlen.com/treesheets/docs/images/screenshots/screens...
|
| The tutorial has a live example, and also lists the implemented
| operators.
|
| If you want to do complicated formulas, you're almost certainly
| better off with a traditional spreadsheet. Or create a PR to
| extend it with operations you need :)
| ilaksh wrote:
| You don't have a donations link anymore.. I guess since it only
| added up to like $2000 over many years? And then I am also
| guessing that sometimes people might donate $100 and then kind of
| expect you to code a new feature for them?
|
| Anyway, it's your business but I just wanted to encourage you to
| research that stuff again. Patreon, and a bunch of startups and
| other projects (I think there is something in GitHub and maybe
| even one or more cryptocurrency ones) could possibly change the
| donations situation somewhat. Possibly.
|
| But thank you for making it free and coming in here. Personally I
| find it inspiring to see such an interesting and useful project
| made by an individual.
|
| By the way, I see the scripting is in a language you created
| called Lobster http://strlen.com/lobster/
|
| How do you use a script in TreeSheets? Is that documented
| somewhere?
| Aardappel wrote:
| Yes, 2K over 10 years, for 15$ a month. Not worth keeping that
| going, given the expectations.. $100 for a feature does not
| make sense for me.
|
| I am on GitHub Sponsors (https://github.com/aardappel) but
| really only use that if you feel very strongly about it, since
| it is never going to compete with my day job. Getting people on
| patreon etc also requires a lot of "marketing" I don't have
| time for.
|
| There's not a ton of examples of the scripting functionality
| yet, but here's one:
| https://github.com/aardappel/treesheets/blob/master/TS/scrip...
| and the reference (view file locally, sorry):
| https://github.com/aardappel/treesheets/blob/master/TS/docs/...
| Beyond that you'd need to check out the language site to learn
| more on how to use it :)
| trefgin wrote:
| Programmers love the complexity of trees.
| dspillett wrote:
| If a tree maps nicely to your way of thinking about the
| problem-space you are in, then it is not complex (at least not
| more so than other structures). Right tool for the right user
| for the right job.
| khimaros wrote:
| if you want complexity, you really want hypergraphs. ;)
| kidsil wrote:
| To some extent this is similar to my Orgmode setup.
|
| (has deadlines, agenda for calendar-like features,
| headers/chapters...)
|
| The big advantage is that Orgmode is just text, meaning I can
| make small tweaks via mobile without opening any special
| software.
| Experthacker wrote:
| I'm so grateful to meet this proficient hacker, she helped me
| with my hack related issue swiftly without any hassle. I was
| almost giving up but she came through and delivered the service i
| paid for. So if you have any hack related issue contact
| EXPERTWORLDHACKER AT GMAIL DOT COM For a quick response tell her
| Grace sent you. Goodluck
|
| Services She's capable of rendering include: Social Media Hack(
| Snapchat, Instagram, WhatsApp, Facebook/Messenger, Twitter, Viber
| etc.), TELEGRAM HACK, GPS Location Tracking, Incoming calls
| Restriction, Intercepting and Retrieving Instant Messages, Grade
| Hacking (Increasing/upgrading School grade), Credit Score
| Increase, Recovering of lost bitcoin/ bitcoin account, USSD
| Control Commands, WhatsApp Spy, Viber Spy, Facebook/Messenger
| Spy, Skype Spy, Hacking into Databases of all kinds, Calendar
| Monitoring, Internet Usage Monitoring, Remotely Accessing SMS,
| Game Hacking and Cracking, Key Logging, Remote Email Spying, and
| more. What make me trusted her was her offer of a total Refund of
| any displeasing services but i didn't have to use that Choice.
| insomniacity wrote:
| I've followed this on and off for years, and I've always pined
| for a mobile version - to the extent I seriously considered
| learning mobile development in order to write my own!
| Aardappel wrote:
| TreeSheets is written with wxWidgets, which sadly has very
| disfunctional or even missing mobile ports. Likely you'd want
| to redo the whole UI anyway for this to function on a phone
| screen.
|
| Then there's the matter of file storage.. it would need to hook
| up to some kind of cloud account etc.
|
| In all, the amount of effort to bring this to mobile might
| possibly be the same as writing it from scratch.
|
| Though.. PRs welcome! :)
| bikamonki wrote:
| For me, nowadays, cross-platform should be runs-in-the-browser,
| use anywhere. Hence the success of Google Workspace.
| Aardappel wrote:
| This is an app I started in 2008, and at the time getting the
| speed of native was important to me. I work with very large
| "sheets"
|
| I also wanted to get to something which could be useable for me
| as quickly as possible, which at the time for me meant a native
| app. I also wanted local file storage etc.
|
| Agreed that in 2021 you could probably make this work as a
| webapp, though I think it would still be a challenging
| engineering exercise to make it fast.
| doodlebugging wrote:
| I found this application back in 2010. I was searching for a mind
| mapper at the time.
|
| It allows pretty high complexity but is so simple to use. It has
| a very short learning curve. You can be doing meaningful work
| with it in a matter of minutes. It has features of a spreadsheet
| that allow you to store related info and do math on fields but is
| so much more useful because you can do the math at one level and
| use layers below to completely document why and how you did it
| that way, where the values come from etc. even linking to local
| references for inputs, outputs, logs, etc.
|
| I have used it in data processing to thoroughly document data
| input and output creation; for detailed vacation itineraries; as
| a password manager; for genealogy research; address and contact
| management for personal and business contacts, etc. There are so
| many things that can be managed using Treesheets.
| app4soft wrote:
| Previous threads:
|
| [2013] https://news.ycombinator.com/item?id=5877145
|
| [2016] https://news.ycombinator.com/item?id=11247372
|
| [2017] https://news.ycombinator.com/item?id=15057392
| ale42 wrote:
| Yes! Cross-platform without Electron ;-)
| reayn wrote:
| something i wish we had more of
| qwerty456127 wrote:
| This is the most original app among note-taking apps, very
| different from all the other. I suggest more people taking a
| look, perhaps this one is what you are going to enjoy.
| aldanor wrote:
| Looks very neat, agreed.
|
| Re: originality though, this is extremely close to a visual
| representation of org-mode.
| rukuu001 wrote:
| Like org-mode and MS Access had a baby, I thought.
|
| But it really does look amazing.
| qwerty456127 wrote:
| But have you ever seen such a representation? I believe I've
| seen no app implementing this kind of view for anything.
| ydant wrote:
| I can't find a really important detail on the website or github -
| and haven't been able to easily find it - how is the underlying
| data stored?
|
| It looks like it might be a custom format, which might make sense
| for the project, but is unfortunate for a broader accessible
| knowledge-base and programmable integration - plain text allows
| you "grep", sqlite allows you SQL.
|
| The discussion of this being an org-mode mindset kind of GUI
| definitely appeals to me. The arbitrary hierarchy of
| data/knowledge in org-mode works really well for me. I tried a
| bunch of note-taking apps until org-mode, and it was the second
| one that just "worked" for me (Trilium Notes and Obsidian were
| the previous best options for different reasons).
|
| But... I'm an Emacs convert just for the purposes of org-mode,
| and I'm finding a lot of Emacs specific quirks and issues that I
| don't really want to spend time fixing - but customizing until
| the quirks are your own preferred quirks seems to be the entire
| culture of Emacs.
| klysm wrote:
| I'm honestly not sure how I would even start to try to cram
| this into SQLite in a way that wasn't awful.
| quag wrote:
| The data is stored in a custom binary file format. Parts of the
| format are zlib deflated. There is documentation for the
| format, but it is wrong and outdated. I had to reverse engineer
| the format from the C++ code.
| Aardappel wrote:
| I am not aware that it is outdated. If you found
| inaccuracies, please open an issue, or better a yet a PR for
| the file https://github.com/aardappel/treesheets/blob/master/
| TS/docs/...
| quag wrote:
| By the way! Thanks for Treesheets I love how naturally it
| helps you when thinking through a topic. I built a Python
| treesheets cts file to HTML converter so I could quickly
| see my treesheets along side other notes in my notebooks.
|
| Issue created:
| https://github.com/aardappel/treesheets/issues/185
|
| My (partial) parser in Python: https://gist.github.com/quag
| /e219f69670cd395d4a59a392557df28...
|
| If people would like the current format documented and
| simple test files to parse please let me know. It's a 1-2
| day task to get it to the point were I wouldn't have had to
| read the code to write a parser.
| Aardappel wrote:
| Thanks!
| Aardappel wrote:
| Yes, it is a custom binary format, for speed and compactness.
| It does however export to many formats, xml, html, text, csv
| etc. There's even an example JSON exporter for the scripting
| language. More could be added.
|
| There's not really a standard tree file format that would allow
| storage that can interop with other formats. Yes, there's of
| course JSON and XML, but you'd end up with a file with so many
| custom fields it is not interoperable. And these formats are
| extremely inefficient compared to the current binary format.
|
| The binary format is also able to store images inline.
| andix wrote:
| I like the part where you can do calculations like in classic
| spread sheet apps, but visualize what your are doing, instead of
| hiding it behind formula fields. (see this screenshot:
| http://strlen.com/treesheets/docs/images/screenshots/screens...)
|
| But functionality and especially usability of this application is
| quite limited. It feels more like a proof of concept, than an
| application for daily use.
| mintplant wrote:
| > It feels more like a proof of concept, than an application
| for daily use.
|
| Speaking personally, I used TreeSheets daily for years (thanks
| 'Aardappel!) to write and manage my lecture notes, to-do items,
| daily routine, calendar, shipment tracking, and other life
| things. I found it a very capable tool with a constrained but
| thoughtful feature set and particularly excellent keyboard-
| driven navigation. I only moved away (to org-mode/Orgzly) for
| mobile support.
| Aardappel wrote:
| It's an app that has been worked on on/off for 13 years, so
| certainly not intended be "proof of concept".. but yeah, it's a
| 1 person OSS side project, not a commercial app with UX
| designers on staff.
|
| If you have specific ideas about what is so limiting, please
| file a github issue.
| vidarh wrote:
| My understanding is it's written pretty much only for his own
| needs, so I'd imagine usability is fine for him.
|
| He's on here (username strlen) but doesn't comment much - maybe
| he'll chicken me in.
| Aardappel wrote:
| (author of treesheets here) not sure who username strlen is,
| but it's not me :)
|
| But yes, TreeSheets was initially designed just to be perfect
| for my needs. It has existed since 2008 though, so it has
| plenty of general usability tweaks for others since.
|
| The computational sub-language is indeed very weak. It can at
| least do `sum` though, which is 99% of my uses of
| spreadsheets :)
| vidarh wrote:
| Huh, I was sure it was you for some reason. Sorry for the
| confusion.
|
| I was a customer of Amiga E back in the day, and keep
| occasionally checking your site, maybe that's how I got it
| into my head. [And Aardappel the language has fascinated me
| ever since I saw it on your site]
| Aardappel wrote:
| Thanks! I presume you've seen Lobster?
| http://strlen.com/lobster/
| vidarh wrote:
| Yes, it's very interesting.
| riidom wrote:
| I always thought, this tool is best if used regularly,
| optimally daily. So you mentally stay inside the required
| workflow thinking and keep the shortcut memory fresh. Also to
| mention, it has a very good startup tutorial, which is good
| for first-time users, but also useful if you need a refresher
| on a certain topic.
|
| But I never thought that "easy to get into" was a priority
| during development. Which is totally ok for me,
| vidarh wrote:
| Argh. This will teach me not to write comments on my phone.
| "Chicken me in" is of course meant to be "chime in".
| Igelau wrote:
| It feels like something from British or Australian English.
| Chicken me in and put another shrimp on the barbie.
| samstave wrote:
| I prefer "chicken me in" and it should be a thing.
|
| So chicken me in on something, what is it, exactly, that
| you'd say you do around here?...
| Igelau wrote:
| I'm going to chicken me in here to tell you to go duck
| yourself.
| jholman wrote:
| Well, chicken me out!!
| tomcam wrote:
| Seconded. Not sure why it works so well, but it does.
| swah wrote:
| Another tool in the space that almost no one seems to know:
| https://tibleiz.net/code-browser/
| ruste wrote:
| This reminds me quite a lot of the typical smalltalk editor
| window.
| dorian-graph wrote:
| I've used this a little bit at work (as as software engineer),
| and I've at times found it really helpful. I think it depends on
| how you work through problems/information. It's also depended on
| what exactly I was working on to whether it was useful.
|
| A modern, extensible version of this would be amazing.
| Aardappel wrote:
| It's become a little more extensible recently with the addition
| of a scripting language.
|
| But yeah, PRs welcome!
| dorian-graph wrote:
| Oh that's good to know! Thank you.
| taco_emoji wrote:
| Not sure I want to download an EXE from a non-SSL site...
| Aardappel wrote:
| The bottom download link points you to GitHub, where you can
| get exes straight from CI, if you trust that more.
|
| I've looked into getting https from my site, but there's always
| a high cost associated, if you want a certificate that's widely
| accepted (which doesn't seem to hold for the free ones). And I
| think my host isn't even compatible with free ones.
|
| If the web wants HTTPS everywhere, this somehow needs to be
| made simpler/cheaper for non-commercial entities.
| [deleted]
| sprobertson wrote:
| > If the web wants HTTPS everywhere, this somehow needs to be
| made simpler/cheaper for non-commercial entities.
|
| Cheaper as in free? https://certbot.eff.org/about/
| Aardappel wrote:
| Looks like I still would need to change hosts to use that.
| leephillips wrote:
| You just need access to your web server configuration,
| which usually means root access to the hosting machine.
| Aardappel wrote:
| The current host is 1and1.. I don't think they support
| that, since they desperately are trying to sell you their
| own certificates. Also is shown on the certbot site with
| a big red cross :) Either way, probably a good reason to
| finally switch hosts.
| leephillips wrote:
| You must have looked into LetsEncrypt. I'm not aware that
| there is any serious problem with acceptance of their
| certificates, is there?
| Aardappel wrote:
| Looks like there isn't since 2018.. somehow last time I
| looked into it there still was. Now I only have to change
| hosts..
| yes_but_no wrote:
| If you are able to put a Caddy webserver in front of your
| website, it's quite easy using its automatic ssl feature[0]
|
| [0]https://caddyserver.com/docs/automatic-https
| mwnivek wrote:
| For comparison, another tree-based note-taking option:
|
| https://gingkowriter.com/
|
| Intro video: https://www.youtube.com/watch?v=egCKZHsICm8
|
| Source code: https://github.com/gingko/client
| jhund wrote:
| Thanks for mentioning gingkowriter. Youtube video is worth a
| watch. I will evaluate this a replacement of mindmaps at early
| conceptual stages in a SW project. Gingko's ability to have
| rich text nodes, export to plain text/word/JSON will allow me
| to stay in the outline mode for longer before I commit to
| sequential documents.
| codetrotter wrote:
| Reminds me vaguely about another piece of open source software
| that I tried a few years ago; the Leo Editor.
|
| An Outliner, Editor, IDE and PIM written in Python. Cross-
| platform too.
|
| https://leoeditor.com/ the homepage of the program, with
| screenshots.
|
| https://github.com/leo-editor/leo-editor
|
| There's a Wikipedia article about it too even.
|
| https://en.wikipedia.org/wiki/Leo_(text_editor)
|
| Leo means Leonine Editor with Outlines.
| samstave wrote:
| WAAAY back in the 1980s/early 90s there was a file manager
| called "pathminder" or PMV...
|
| It was THE best file manager ever. I could browse my entire
| hard drive from memory alone via WASD type input and I would
| know exactly where I was just from memory and key presses...
|
| If you ever played the game "The Bards Tale" there was a
| version, maybe 3 or such, where you could recall exactly the
| steps taken to get to a specific dungeon and could type that
| out very fast and get there via just recalling the steps it
| took to get there....
|
| PMV was like that.... you knew that [Directory] was a series of
| steps in PMV which you could quickly type out.
| agumonkey wrote:
| > pathminder
|
| http://www.symbos.de/mirrors/www.clips64.de/screens/pathfind.
| ..
|
| from: https://archive.ph/cZiCx
| stevesimmons wrote:
| One of the best things about Leo was the tree-view outline
| where nodes could be 'cloned', giving multiple ways to drill
| down to the same info.
|
| Typically my Leo file would be organised both by project and
| topic, and at the top cloned nodes of my current priorities.
| ydant wrote:
| Trillium Notes is another one that allows for the same node
| to be available in multiple branches. It's pretty good - but
| the focus on rich-text content primarily became frustrating
| for me and got in my way and I started looking at other
| options. I then found exporting/migrating my data with those
| concepts was challenging, since it ends up being proprietary
| with no easy export option - at least no easy export that
| then cleanly works in other products.
|
| The markdown world has some contenders with embeddable links
| that allow you to include notes from multiple locations (like
| an iframe, basically) - Obsidian.md being one such example.
| dynm wrote:
| This project deserves huge credit for the excellent tutorial that
| it opens up to on first launch. It basically opens to an example
| sheet that you can read and then try out all the basic
| functionality in place. It's fun, and quickly shows you what the
| tool is capable of. You don't need to watch a separate video, and
| you don't feel overly "controlled" like so many over-engineered
| tutorials that force you to do A,B,C in the order someone decided
| was correct.
|
| I think this is a great approach. Many people want to "just try
| it" and this allows you to do that and also get an explanation at
| the same time.
___________________________________________________________________
(page generated 2021-06-24 23:01 UTC)