8 ms·
Show HN: Jot: Rapid note management for the terminal, inspired by Obsidian
- octokatt 4y agoI appreciate this effort, and I want to try it out... but in the README, I did not see how to literally make a note from the terminal. Is this intended to make something like Nano easier to integrate with an extra tool set provided by Jot, or is there a feature I missed? I'm not sure what problem this is trying to solve.
- araekiel 4y agoHey, try the note command to make notes. Example -> https://github.com/araekiel/jot#create-notes-and-folders https://github.com/araekiel/jot#create-notes-and-folders And yes, this tool is meant for integration with text editors. Jot is simply for creating and managing notes (markdown files). You can use the text editor that you fancy, like nano or vim, or something like vscode, if you need a GUI.
- emerongi 4y agoPersonally, I'd like to take notes with vim (or helix), however somehow it's still an unsolved problem to sync files with end-to-end encryption between devices, without also having to use some specialized application. Obsidian is so far the most seamless way to write and sync notes between Linux and iOS. I'd pay money for a daemon that could do E2EE encryption of any files on my machine and also worked on iOS.
- tacostakohashi 4y ago> it's still an unsolved problem to sync files with end-to-end encryption between devices, without also having to use some specialized application. How about using git, over https or ssh? Or are those 'specialized'?
- emerongi 4y agoGit is not that convenient to use on the phone.
- tacostakohashi 4y agoIs vim?
- araekiel 4y agoI don't plan on making jot mobile compatible. Maybe in the future, but not right now.
- Mylloon 4y agoPersonally, I use Syncthing to sync all my notes between computers and my phone, it works great!
- deleted 4y ago[deleted]
- araekiel 4y agoI do plan on adding vault encryption and cross device sync (literally making a list of updates atm). Like tacostakohashi mentioned, I too have been thinking of using git for cross device sync.
- tcrenshaw 4y agoHave you looked at syncthing? I believe it ticks off all your boxes. I'm using it to sync my obsidian vault and Todo list between multiple android, Windows, and Linux devices and it Just Works. I do have an always on server running it as well to both maintain a backup and to catch any notes devices powered down might miss, but it's not a requirement.
- pydry 4y agoI do this with termux + keybase git.
- samsquire 4y agoMy notes system is established but this tool looks interesting. I essentially create a Github repository and journal computer and software ideas in the open in a README.md with a markdown heading for each note and number the notes. You can find my journal of 450+ computer software ideas in my profile. If you're on the fence over what tool to journal with, then I recommend my approach, it just works and it has low barrier to entry, you just need github account, you could even use the web interface to update your journal and edit the README.md. Whatever tool you use it needs to have low friction so it encourages you to write and you don't forget how to create a post once you set it up. The important thing about journalling is that it encourages you to write and keep writing which is where the reward comes from.
- araekiel 4y agoSounds great :) Eventually, Jot will have git integration for cross device sync, maybe then, it could serve as a nice addition to your workflow.
- samsquire 4y agoThat's awesome. I sometimes edit my notes in IntelliJ or in GitHub web interface. At one point I created an autocommit script that commits every second which you can change the commit message by setting it in a file called "current-task" Could combine this with automatic synchronization with pulling too. #!/bin/bash while true; do sleep 1 (cd app ; git status -z; git add . && git commit -m "autocommit $(cat ../current-task)" ; git push -f app); done > autocommit.log 2>&1
- araekiel 4y agoCool! Just took a screenshot, might need this later. Thanks! Will add a reference to this comment, if I end up using it. :)
- gunapologist99 4y agoConsider using inotifywait to commit only on changes, rather than just committing every minute.
- bongobingo1 4y agoMaybe I'm dumb, but I don't see what this is doing besides aliasing `cd`, `mkdir`, `ls` and `nvim note.md`?
- araekiel 4y agoJot's purpose is to ease note management, using vaults stored in different parts of your storage, that can be accessed from anywhere, essentially eliminating the need to manually cd to different locations. This is still in its initial phase, hence the rudimentary features (I prioritized everything I considered basic necessities). I am working on adding more fancy features though, for example, a fuzzy finder.
- rbetts 4y agoFwiw (maybe not much :-)), for me the the killer feature of obsidian is the combination of markdown + inline image rendering + local storage. My notes are typically screenshots + text. Being able to drag and drop a screenshot into a note is primarily why I use obsidian.
- araekiel 4y agoObsidian is an absolute dream, I know. I do still use it for college/research projects (basically anything information heavy), but I've found it to be a bit of an overkill in most of my daily use cases <- one of the reason why I am working on this tool.
- Version467 4y agoI like that this is editor agnostic, but I also think that obsidians killer feature is the effortless linking between notes. That seems to me like it would be much easier to do with an editor plugin. Do you have any plans to add something like that?
- araekiel 4y agoYes :) I do have plans for something similar, but its a bit low on my priority list since I'm keeping this project focused on note management right now.
- Version467 4y agoCool, I'll keep an eye on it then. Linking and jumping between notes IS what I'm using to manage my notes, so it doesn't fit my workflow quite yet, but I'd love to ditch obsidian for something that works with vim / in the terminal. But keep going. The note taking space has made some serious progress in the last few years with things like obsidian, dendron, logseq, and many others, but terminal tools have not caught up yet and I'd love to see more progress there.
- araekiel 4y agoThanks! This will take a minute to figure out, but I'll definitely work on it eventually.
- hermiod 4y agoI just wrote a super simple nvim plugin in fennel that allows you to go straight to your daily note using your existing obsidian config. https://git.sr.ht/~hermiod/obsidianlite.nvim https://git.sr.ht/~hermiod/obsidianlite.nvim What I really want to do is build a language server for "backlinking markdown". In that case any editor could consume it to get references, go to definition, etc. Does that sound like the right experience?
- Version467 4y ago
- yakcyll 4y agoI found Obsidian great, so if this reaches near feature parity and allows me to stay in the terminal, it's a great upgrade already. Recently though I switched from vim to Doom Emacs and started learning org-mode. This turned out to quite literally be a career breakthrough for me, as I realized how much easier it is with both to remain productive throughout the day and to manage my personal knowledge base, or second brain. I'd highly recommend everyone to try DE out [0]. I always thought Emacs to be unnecessarily complex, but majority of it is hidden away in special features. DE, especially for vimmers, delivers a lot of very useful IDE-like functionality out of the box, simplifies the hotkeys, provides stellar configurability and, in my experience, just lets fingers flow more smoothly across the keyboard. Org-mode by itself may seem daunting as well, but it turns out to be designed in a similar fashion - take and use what you need, no hidden complexity or other strings attached. I can recommend Distrotube's tutorials on either [1]. [0]: https://github.com/doomemacs/doomemacs https://github.com/doomemacs/doomemacs [1]: https://www.youtube.com/watch?v=Ea_-TaEGa7Y https://www.youtube.com/watch?v=Ea_-TaEGa7Y
- Jeff_Brown 4y agoOrg mode has a lot of rabbit holes, but to use org roam (which builds on org mode and Lets you manage a knowledge graph) effectively is surprisingly easy. You need to know how to link to something, how to view backlinks, how to format the tree of text using asterisks to indicate depth in the tree, how to define aliases in a note's Properties drawer, and that's pretty much it.
- araekiel 4y agoCool! Will check it out.
- oktwtf 4y ago> It uses the same format of storage as Obsidian... Can Obsidian and Jot co-mingle in the same vault? I use Obsidian and am very happy with the git plugin[0] and Working Copy(iOS)[1] for keeping things automatically synced between my phone and desktop(s). Often I find myself dumping notes into random places from the terminal; feeding markdown via pipes. But I then have to remember to collect these artifacts and ensure I fire Obsidian back up for a push. I'd love something that could work "together" with my present setup. Looks like things are set out quite clearly[2], and Rust looks quite approachable. Very cool stuff! [0]: https://github.com/denolehov/obsidian-git https://github.com/denolehov/obsidian-git [1]: https://workingcopyapp.com https://workingcopyapp.com [2]: https://github.com/araekiel/jot/tree/main/src https://github.com/araekiel/jot/tree/main/src
- araekiel 4y agoNow that I think about it, they can, just not right now. What Jot needs is a 'use existing folder as vault' feature like in Obsidian, or an 'import vaults from Obsidian' feature. As an Obsidian user myself, this would be neat. Thanks for the idea! I'll add this to the feature updates list :)
- pfd1986 4y agoThat was my thought / use case too. I'd love the ability to quickly add notes to my existing obsidian if I'm in the terminal. For longer notes, with images, links etc I'd rather use the GUI. Nice work tho!!!
- araekiel 4y agoFunnily enough, this WAS the original idea, to have a cli tool that acts as a sort of plugin for Obsidian, to be used when in hurry. I looked for APIs and libraries that could make this possible but couldn't find any. This will be a great circle back :)
- nmz 4y agoIs this is about the default freebsd command?
- tionis 4y agoAwesome! I quite like the trend in note-taking software lately, I'm also currently building a similar obsidian-compatible tool: https://github.com/tionis/glyph https://github.com/tionis/glyph
- Thorentis 4y agoFeedback on commands: > jt note newnote > jt folder newfolder I have to type "note" or "folder" twice, just to create a new one. I prefer the convention that most other tools follow whereby "new" is the base command, and then the thing you want to create is the noun. Eg > jt new note If you really want the noun to be first and the verb second, at least simplify it to: > jt note new Though I much prefer the verb first since it reads more like an action sentence.
- araekiel 4y agoI did try this before, just instead of 'new' I used 'make'. I'll consider this again! Thanks! :)
- aedocw 4y agoI've got a few zsh functions that let me type "note" which creates a file named todays date (if it doesn't exist), inserts a timestamp, and opens it in vim. When I exit vim, the notes directory is committed to git then pushed up. This lets me keep my notes directory in sync across machines, and available via web (gitea). note () { DATE=`date +"%Y%m%d"` TS=`date +"%Y%m%d %H:%M:%S"` FILE=$HOME/Documents/notes/$DATE.txt notegitpull echo $TS >> $FILE vi $FILE notegitpush } notegitpull () { pushd $HOME/Documents/notes if ping -c 1 git.server &> /dev/null then git pull else echo "Offline, not pulling changes" fi popd } notegitpush () { pushd $HOME/Documents/notes git pull git add \* git commit -m "Autocommit due to edit of $FILE" if ping -c 1 git.server &> /dev/null then git push origin main else echo "Offline, not pushing changes up" fi popd }
- ehnto 4y agoI have something similar, I made it check for a .notes folder in the current working directory so that I can have per-project notes just by adding that folder in first. I want to add custom filenames as I'm finding that easier to mentally keep track of, like "integration-bug-factfinding.note" is a little easer to find again than "12-22-2022.note". Currently I have these commands: note //Adds a note to the current days notefile, in the current directory's .notes folder if present or ~/.notes if not edit-note //Opens the same notefile as above in a text editor notes //Concats todays notefiles echos displays them all-notes //Concats all notes ever and echos them, useful to grep for keywords across my history of notes