this post was submitted on 01 Mar 2024
89 points (96.8% liked)

Selfhosted

41049 readers
15 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Hello everyone, I'd like your recommendations for a note taking app that:

  • Can be selfhosted
  • Stores the notes as plain text or *.md files, not some SQL database.
  • Can use Marddown format.
  • Have an android client or at least a mobile optimized web-interface.
  • Not a must but it would be nice to have a to-do list option.

I tried:

  • Trilium: use an encrypted litesql to store the notes.
  • Joplin: does not encrypt the notes, but store them in random named directories, making ot harder finding the notes.
  • Logseq: No firefox support, I did not check how it stores itsdatabase.
  • Standard note: Need subscriptions to selfhost or to use markdown format.
  • Memos: does not store plain files, instead uses a (sqlite probably) database even when setting local filesystem as current object storage.
  • CodiMD: use database to store its notes
  • Hedgedoc: the same as above

The closest I found so far is Obsidian, which:

  • Unfortunately, does not have any selfhosting option.
  • Have a client app on every platform and store.
  • Can use a custom directory to store it database as plain text files, whuch can be a network mounted directory (on my laptop/desktop) or a directory on my android phone that i will have to keep synchronized using a third party app.

Edit: March-2nd: added memos, codimd, hedgedoc

you are viewing a single comment's thread
view the rest of the comments
[–] thayer@lemmy.ca 1 points 11 months ago* (last edited 11 months ago) (1 children)

I write nearly everything in markdown. Like you, I don't want databases, or other barriers that will complicate portability.

I just use my text editor of choice, usually VSCodium or vim on the desktop, and Syncthing to keep the notes synced across all of our devices.

On Android, I've been happily using the Markor markdown editor for years. I've tried several others but always return to its simplicity.

All of the above editors support opening folders in a tree view, so you can easily keep your notes sorted under a traditional folder structure and find what you when you need it.

Edit: Forgot to mention that Markor does have a dedicated to-do feature too, which also uses markdown.

[–] mhz@lemm.ee 1 points 11 months ago (1 children)

Thank you for your reply, I do host a vscode instance to keep for my python learning. I will fall to that (with markor) if nothing else works.

[–] thayer@lemmy.ca 1 points 11 months ago* (last edited 11 months ago)

You're very welcome. For Markor, I wasn't a fan of the default viewer theme, which is how I view most notes when on mobile, so I made some tweaks to improve its appearance...below is a screenshot:

If you want something similar, add the following under Settings > View mode:

  • Open existing files in view mode: on (this may be default)
  • Link color: #71aaff

And replace the <style>...</style> block under the inject -> head pop-up with the following CSS:

<style> 
html, body { 
  font-family: sans-serif-condensed;
  font-size: 110%;
  background: #0d1117; 
  color: #c9d1d9;
  margin: 0;
  padding: 0.5em;
}

a {
  color: 58a6ff;
  text-decoration: none;
}

h1, h2, h3, h4 {
  padding-bottom: 0.25em;
  border-bottom: 2px solid #222934;
}

hr {
  border: 2px solid #222934;
}

pre, code {
  color: #b5a5ee;
}
</style>