Personal Information System for the L5 and beyond

I thought it would be cool to have an application that helps me to manage all kinds of mixed content information.

With mixed content information I mean all sorts of information where you could have text, images, lists, checkboxes, tables, hyperlinks etc. and it don’t has to be in a normalized structured form for machine readability.

Examples could be arbitrary personal notes, source code snippets, configuration tips (you do only once a year or so), cooking recipes. As an example in contrast I would see bookmarks, because they should be more structured so that they are machine readable. A bookmark manager should be standalone as bookmarks need to be sorted, filtered, passed to or other programms, checked for dead links, checked for duplicates, taken snapshots etc… I don’t really need this for cooking rezipes (sorting and filtering maybe).

As such a DB of personal information will grow over time, we need a system that is targeted to be used long term. And least it must be save that the DB can be accessed forever so that no data gets lost. Interoperability would be appreciated. Also such an information system should not run on L5 alone. It should be able to run on desktop computers to.

What options already exist?
My first thought was an notes app. Not all notes apps can handle images, tables etc… From the screenshots from http://wiki.gnome.org/Apps/Notes Gnome Notes doesn’t either. If we find a notes that fits the L5’s screen (or can be adjusted to do so) and and can handle such different kind of data it would be an option.

When talking about such different types of data naturaly markup languages come in. So HTML could handle all those tables and images. I am not sure about simplified markup languages like Markdown. Anyway it would be tedious to type HTML source on the L5 when writing a quick note. So we need an WYSIWYG editor, which also exist (at least in JS).

A wiki is basically what I think of from a functional way. MediaWiki is probably THE wiki. Most popular I guess and IIRC used by Wikipedia (Happy Birthday). Mediawiki unfortunately needs a webserver (I think apache as default), PHP and a MariaDB or MySQL database server. At that point it raises the question how much resources and energy all that consumes and if this is the best choice for a mobile device.

On the other side mediawiki would give us the abillity to really use it as a server and access our information from another device (take that android!). Although we should do this with care, because it opens up security concers. Would you activate TLS, and user authentication for this, in case you use it in an untrusted network?

Despite Mediawiki I found DidiWiki and Ciwiki. CiWiki is a fork of Didiwiki and seems to be it’s inofficial successor. CiWiki is writting in C and its told to have a small footprint. Its got the webserver integrated. Unfortunately the last update seems to be from 2016 and I haven’t found documentation yet.

We could cut the markup approach down, let the wiki go together with its server capabilities and simply use a WYSIWYG editor and ordinary HTML files. That would leave us with doing many things manually like e.g. placing an image we want to embed into some proper place before referencing it into the page.

So I shared much of my thoughts now and I would be happy to hear what you think about this. :slight_smile:

Stay healthy everyone.

1 Like

No HTML

HTML is

  • messy and
  • bloated.

Markdown degrades nicely to readable text.
I’d opt for markdown. With that you can do everything what’s possible on this forum. Should be enough. Could still link to each other, wiki style.

No Database

Also bloated. Just have a folder with text files. That’s more Unix-y.
You could even regularly sync to git and diff your changes.
You could even (easily) add/extend these files by scripts / external programs. E.g. make a two-tap diary entry with yad (see easy app development ) or add-clipboard-to-shopping-list with one tap.

1 Like

I know few guys which are pretty happy with ad hoc Markdown documents for all sorts of personal stuff; so do I: have few documents for different topics which grow over time (in case of to do list & notes shrinking is possible too =)).

If you want to have it nicely rendered, you could employ something like Mkdocs, which transforms a set of Markdown files into customizable static website.

1 Like

Org Mode. It’s a tiny bit esoteric, but can be exported to HTML/Markdown (or just about any other markup format), is easily human readable in its raw form (if you cat $file or similar), it’s relatively intuitive to write, as it’s very similar to the old outlining format I used long-hand in school.

It also can display images inline, have hyperlinks to other documents or external resources. It supports tables, complete with formulas, code snippets, complete with the ability to run them in-file or export them. And it supports scheduled tasks: tracking their status; looking at upcoming deadlines; resheduling recurring tasks.

Of note, it can’t embed images directly, a bit like HTML in that regard. But most org-mode frontends have capture functionality that writes the image to a file and embeds the link to it at the current point. Similar functionality exists for adding new todo items, capturing clipboard data and inserting a template.

Anyway, expect a steep learning curve. If you want to see what it can do, there’s a video series on YT that goes over using it in-depth.

I apologize in advance for my inability to recall the details… I heard about a project offering something along these lines, but quite advanced. In addition, it pulls your information history from many online sources, including phone GPS records, email, irc, social media and forums (fora?). It uses open source AI to build a searchable digital history of your life. The developer took great pains to respect privacy and while they offer a cloud service, it is entirely self hostable.

I don’t the name of the project or developer, but I almost certainly heard it as an podcast interview on Destination Linux, Hacker Public Radio, or Linux Unplugged.

I was going to suggest that. It has its good points and its bad points.

These days you can embed images directly in HTML e.g. http://www.techerator.com/2011/12/how-to-embed-images-directly-into-your-html/

I think it sounds like if the GTK app Notes-Up was ported to smaller screens that would fit your requirements nicely.

1 Like

You’ve been able to do that for a fair length of time (basically since html5 launched). The issue is the image is encoded base64 and embedded in the document. Fine if you’re generating the HTML via something like libreoffice export and never try to hand edit the generated file, not so fine if you have to open the html in an editor to make changes (most of them will absolutely choke when you get much past 10MB of file).

And, FWIW, with org-mode you could embed an image base64, with exactly the same issue.

1 Like

Just FYI crosslinking

2 Likes

I just read this article about a browser with integrated notetaking.


Intersting read, except for the obvious privacy problem there, and then I have to wonder how his new endeavor will finally be more fulfilling, when the goal is monetization via Google…

Anyway… It brought me back to the idea (above) of a note-taking app based “just a folder with text files”.
Two more benefits:

  • sync between devices via nextcloud?
  • should be easy to write a simple browser plugin that, with just two taps, appends information to ~/home/notes/browser-log_$today.md. Like
    • tap URL, tap “take note”
    • select some text, tap “take note”
2 Likes

I believe I’ve heard that one before. :rofl:

Have you checked out Cherrytree? I believe someone even had it running on their L5 that I saw somewhere (landscape mode and 100% scale).

You might be interested in Zim, if you haven’t tried it before. It’s desktop Wiki software. Has the potential to work OK on a phone, but probably a bit awkward unless someone is going to make the GUI adaptive for the narrow screen.

I tried it for a while. It was OK. I got a bit fed up with it, but that is probably because I tried to use it to organize literally everything in my life. I probably would have got on better with it if I’d created notebooks only for specific projects, rather than trying to cram everything into one giant notebook. Formatting was a bit restrictive too.

Nowadays I tend to use a lot of plain text files with Markdown formatting.

For a completely different approach: New Post: App Spotlight: Sound Recorder

I’ve never done it. But the scope sounds doable.

But it was just a quick idea that can probably be refined. I just thought
“why not just always monitor the clipboard”
“because then you log a lot of nonsense, too, duh!” (e.g. while editing the notes, constantly append :joy:)

But…

 onClipboardChanged() {
    if (foregroundWindowProcessIs({"gnome-web", "firefox-esr"}))
        appendClipboardToNotes()
 }

:smirk:

Might be simpler, works for your favourite selection of apps, and doesn’t break with every browser update…

@lo0, @patch, both Cherrytree and Zim look intersting (bookmarked this thread already),
but it doesn’t look like you can easily or productively use them in a mobile form factor.
However, Zim (storing separate files), looks like it would be easily compatible with a mobile-optimized app that has a simple text-files backend (which is one more reason why that’s a good approach :slight_smile: )
So, you could possibly sync with your desktop, but use a more powerful desktop UI, maybe.