HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
nickjj
notes
Shell2020–2026
nickjj / notes

notes

A zero dependency shell script that makes it really simple to manage your text notes.

2Distinct people
13Mentions
1Explicit recommenders
160GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A zero dependency shell script that makes it really simple to manage your text notes.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

Since about 2001 I used YYYY-MM.txt plain text files and have a shell script to help create notes in the most friendly way I could think of from the command line at…

nickjj used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year13 dated mentions

Observed mentions: 2020-01-03 15:13:59 UTC to 2026-04-25 16:54:10 UTC.

0123452020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 5 mentions; 1 submissions, 4 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 5 mentions; 0 submissions, 5 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments20232024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC514
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC505
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC000
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC000
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC101
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC101

What Hacker News says

13 sources
Plain text is great. 20+ years of my notes are in plain text, facilitated with https://github.com/nickjj/notes. Also been doing plain text invoicing for around 7 years with https://github.com/nickjj/invoice. There's also Plutus https://github.com/nickjj/plutus for income and expense tracking. Couldn't be happier. All I do now is export my bank's CSV files and import them into Plutus, a few minutes later my books are done after I align some of the categories. I've done 2 years of taxes with this now.
In Plain text has been around for decades and it’s here to stay
I did something similar since 2001: -rw-r--r-- 1 nick nick 691 Mar 16 2001 2001-03.txt I separated mine by YYYY-MM which is long enough to keep related things together but short enough where it's easy to find things within a single file. It's all super easy to grep things out on demand. There's no procrastination about organizing or perfect tags. Just brain dump the thought or notes and move on with life. https://github.com/nickjj/notes was created so I can type things like `notes hello world` and it inserts it for the correct YYYY-MM or `notes` to open the current YYYY-MM in your $EDITOR. It supports piping into it too (good for pasting from your clipboard). It's ~40 lines of shell scripting with comments.
In My productivity app is a never-ending .txt file (2020)
I've been doing something similar for 20+ years at: https://github.com/nickjj/notes - Running `notes` will open this month's notes for YYYY_MM.txt in your default $EDITOR - Running `notes hello world` will append `hello world` to YYYY_MM.txt - Running `$stdout | notes` will append another program's output to YYYY_MM.txt (useful for piping your clipboard) I find this offers the least amount of resistance for quickly adding notes. Every method of input is 2 seconds away on the terminal and grep makes things searchable enough where I can still pull things out from files 5-10 years ago without issues. I tried YYYY_MM_DD.txt for a while but I found it to be too fragmented. Oftentimes I want to look at a few day's worth of notes at a glance.
In My productivity app is a never-ending .txt file (2022)
nickjj·Dec 3, 2021Recommendation phrase
Since about 2001 I used YYYY-MM.txt plain text files and have a shell script to help create notes in the most friendly way I could think of from the command line at https://github.com/nickjj/notes. Totally works fine for a knowledge log when you're streaming high level details from your brain into text. I still use it today. The repo hasn't been updated in 2 years because it's a ~20 line script with a simple API that hasn't failed yet. But when you want to really go all-in with in-depth notes on 1 semi-broad subject it's tricky because in 1 month's time if you're hardcore deep in the woods of learning, applying and using something you're going to end up with hundreds of concepts from an assorted set of tools and it kind of stinks to have all of that info sitting in 1 file. Think about using something like Kubernetes. That's really Kuberne
Read the rest
tes, Kustomize / Helm, EKS, various cloud hosting details (networking, etc.), Terraform and ton of super useful commands / context. Details you for sure want recorded for later. For this type of info I've been building up a personal knowledge base with https://obsidian.md/. It's really nice and I highly recommend it. It's been working well for keeping things reasonably categorized without wasting a lot of time on the details around keeping links and tags up to date. It also has Vim mode that's good enough where day to day writing feels natural.
In Keep a Log
This is very much why I keep things simple with an automated shell script[0] that creates and appends to a YYYY-MM.txt file for notes that's optimized for easy entry from the command line. I've been doing this style of note taking since 2001. There's never any reason to think about where to save it, how to save it, what tags I should use, what it's linked to, formatting and other distracting tasks. You just run `notes` and it opens this month's file in your default $EDITOR, `notes this is my 1 liner to append to the file` or `echo "something to pipe in" | notes` depending on what you want to add. It's just 1 continuous thought process of notes that's broken up by date and having it broken up by month is nice because if you're working on something that spans a few days you have everything together most of the time to recall it when you wan
Read the rest
t it most. Then for recalling specific older entries it's really easy to use grep and other command line tools or just open the whole directory in your editor and casually browse your notes if you want to go down memory lane. [0]: https://github.com/nickjj/notes
In Incremental note-taking
A whole bunch of little things, mainly command line tools. Most of them are open source and also have extensive documentation and a screencast video going over them. Here's a few examples: - https://github.com/nickjj/notes - https://github.com/nickjj/invoice - https://github.com/nickjj/wait-until And a few recent scripts to optimize very specific workflows: - https://nickjanetakis.com/blog/using-ffmpeg-to-get-an-mp3s-d... - https://nickjanetakis.com/blog/a-shell-script-to-keep-a-bunc... - https://nickjanetakis.com/blog/bash-aliases-to-prepare-recor...
In Ask HN: Tools you have made for yourself?
As someone who has been creating plain text notes since 2001 I found in practice daily notes tend to be a bit too scattered. Usually if you're working on something and you want to reference your notes the next day it's a nicer experience to have that in the same notes file as today instead of yesterday. Over the decades I've settled on a YYYY-MM.txt file, or 1 file per month. Last year I open sourced https://github.com/nickjj/notes which is similar'ish to this tool. It supports opening your notes in any editor (using $EDITOR), launches this month's notes with `notes` but also lets you create notes with `notes hey just writing a note` or sending notes in from stdin with `echo "cool" | notes` (useful for pasting a note). Also, if you really wanted daily notes you could easily change the date format to include -%d. After doing notes by hand
Read the rest
for so long I initially wrote the script with daily notes thinking it would be better but very quickly reverted back to monthly notes. The whole thing is a 25 line bash script so it's super easy to edit if you don't like what it does by default.
In Show HN: Simple tool for creating and organizing daily notes on the command line
This is what I do too. I have 20 years of notes saved like this. I also open sourced a zero dependency Bash script that handles this at: https://github.com/nickjj/notes It supports adding notes in 3 different ways: notes hello world appends the text to the YYYY-MM.txt dated file echo cool | notes same as above except you can pipe in text notes opens the YYYY-MM.txt file in your configured $EDITOR I use all 3 methods of input on a regular basis depending on what I want to jot down.
In How I Manage My Random Daily Notes
Does anyone else use plain text notes for everything? I've tried to optimize things so that while working, I can get things jotted down with close to zero resistance. If the barrier of entry is too high then I don't bother doing it. That means often being able to spawn a new terminal, write a command and be done with it. Or to be able to pipe something from my clipboard into an auto-dated file. I ended up putting together this ~15 line Bash script which seems to do the trick: https://github.com/nickjj/notes I've been using plain text notes since 2001, although I only recently created this script. So far so good.
In Managing my personal knowledge base

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.