Skip to content

Introduction

How does it work?

qlm is a lightweight python library that makes it easy to take beautiful notes on the command line.

It uses Rich's markdown rendering to make stuff look good in your terminal and uses the Typer library for building command line apps in Python.

qlm also uses Github as a backend, so you can access your notes on any machine - you just need your Github Personal Access Token.

Your notes will be private by default and you can edit them easily - they're just files in a Github repository.

qlm provides a few commands to interact with the Github API directly, which makes it fast and simple to set things up.

๐Ÿš€

Why qlm?

If you're anything like me, you often have to switch between different machines for work. Work laptop, dev laptop, personal laptop, shell on server x, shell on container y, debug session in k8s pod z.

And when you're in these situations, you want your notes! On the command line, and fast.

So that's what qlm does. I've found one other project like it - Dnote - which has some very cool features. Check it out!

But it requires you to set up a SQL server or pay to use one, which is too much overhead for me. And it doesn't have pretty markdown rendering.

๐Ÿ˜

Installation

pip install qlm Successfully installed qlm qlm --help

Set Up

To start taking notes, you should first connect to the github repository where you want to keep them in the format <username/repo>.

Then, you can create, save and display notes in your terminal

๐Ÿ˜Ž

export qlm_token='your Github PAT token' qlm connect 'osintalex/notes' qlm config --local-repo 'folder to keep notes in' echo '# Example' > example.md qlm add example.md qlm ls qlm show example.md qlm edit example.md

Offline Mode

qlm supports working offline. You can keep all your notes in a local folder, and then when you connect back online, run qlm publish to add them to your remote.

qlm offline 'folder_with_notes' echo '# Example' > folder_with_notes/example.md qlm add example.md qlm connect 'username/repo' qlm publish