whoami

gn // get notes

Zero-dependency markdown notes, synced to WebDAV or GitHub.

gn is a simple bash script that pulls a markdown note from cloud storage, opens it in $EDITOR, and pushes it back if you changed anything. Supports standard WebDAV endpoints (Koofr, TAB.DIGITAL, The Good Cloud) and GitHub. No git, no daemons, no heavy apps to install - just curl and a local folder.

Download

gn.sh - save to ~/bin/gn, chmod +x ↓ gn app for Mac/Linux/Windows

Setup

  1. Download gn.sh above and make it executable:
mv gn.sh ~/bin/gn && chmod +x ~/bin/gn
  1. Prepare your storage provider credentials:

Option A: GitHub

  • Private Repository: Create a private repository (named gn, or anything you like) to hold your notes.
  • Personal Access Token: Generate a new Personal Access Token with the repo scope — this lets gn read and write files over the GitHub API.

Option B: Koofr Cloud Storage

  • Log in at app.koofr.net.
  • Go to Account settings → Password and generate an App Password. The script needs this specific token, not your main web portal login password.

Option C: TAB.DIGITAL

  • Sign up or log into your cloud account at cloud.tab.digital.
  • Navigate to Personal Settings (click your user avatar/initial in the top right corner) and select Security from the left sidebar.
  • Scroll down to the Devices & sessions block. Type gn-cli into the text box, click Create new app password, and copy the unique token generated.

Option D: The Good Cloud

  • Log into your dashboard via thegoodcloud.nl. Take note of your cluster prefix subdomain in your browser's address bar (typically nu or nl).
  • Go to your profile menu in the top right corner, select Settings, and click on Security in the side navigation panel.
  • Find the Devices & sessions header at the bottom. Input gn-cli, hit the generation button, and copy your application-specific token.
🔒 Privacy: Credentials are saved into ~/gn/gn.conf with chmod 600 permissions - only your local user can read the file.
  1. Run the script. If no configuration file is found, it will run the interactive setup menu to configure your credentials:
$ gn
No config found at ~/gn/gn.conf - let's set one up.
Select your provider:
1) GitHub
2) Koofr
3) TAB.DIGITAL
4) The Good Cloud
Choice [1-4]: 3
TAB.DIGITAL Username: your-username
TAB.DIGITAL App Password (input hidden):
Remote notes folder [/gn]: /gn
Save this config for future runs? [Y/n] Y

To clear or alter your configuration later, run gn -c to wipe gn.conf and re-run setup.

Usage

gn [options] [note]
Command What it does
gn Open (or create) default note.md
gn ideas Open ideas.md - pulls, edits, pushes if changed
gn -d ideas Delete a note, local and remote (with confirmation)
gn -r old new Rename a note, local and remote (WebDAV MOVE)
gn -s Sync (pull) all remote notes down to local directory
gn -c Clear saved credentials and reconfigure
gn -h Show help

Notes

Heads up Sync is last-write-wins. There's no merge or conflict detection - if you edit the same note from two machines without syncing in between, the second push overwrites the first.
Tip Notes are raw markdown files in your chosen storage backend, so you can read and edit them directly via a web browser or mobile app — e.g. Nextcloud client, Koofr, or GitHub.

Source

The full script - copy it directly if you'd rather not download the file.

Loading gn.sh...