Instant, lightweight, floating notes for Omarchy

1 2 3
10:42 82%
~/Projects/karatasi main cargo build --release Compiling karatasi v0.1.0 Finished release [optimized] 41.2s ~/Projects/karatasi main karatasi toggle ~/Projects/karatasi main
wiki.hypr.land/Configuring/Window-Rules
Hyprland Wiki › Configuring › Window rules

Window rules

Window rules let you apply settings to windows that match a set of criteria: class, title, floating state, workspace and so on.

float, pin, center and size are static rules. They are evaluated once, when the window opens.

A pinned window stays visible on every workspace of its monitor. Only floating windows can be pinned.

40// A second invocation forwards the action over the socket.41fn forward(action: &str) -> io::Result<()> {42 let mut sock = UnixStream::connect(socket_path())?;43 sock.write_all(action.as_bytes())?;44 Ok(())45}4647pub fn toggle(app: &AppHandle) {48 match main_window(app) {49 Some(w) if w.is_visible() => hide(app),50 _ => show(app),51 }52}
NORMALsrc-tauri/src/lib.rs47:8
~/Projects/karatasi main git log --oneline -3 31195ee Add block editing commands and automate releases f297e7f Drafts, single-press delete with undo, configurable keys a037b58 Karatasi: floating markdown notes for Omarchy ~/Projects/karatasi main ls ~/Notes Landing page.md Standup.md Welcome to Karatasi.md ~/Projects/karatasi main
Super N
On this page:
N = Super N T = Super T 1 = Super 1 2 = Super 2
Already running Karatasi? Press the real Super N.
Super N Write

The Raycast Notes you left on your Mac, rebuilt for Omarchy. Local files, your theme, one key.

$ sudo pacman -U https://karatasi.app/karatasi-$(uname -m).pkg.tar.zst
$ karatasi-setup

Intel and AMD or Apple Silicon, uname -m picks the right package.

or press N
01 · SUMMON

Press Super N.

A note, centered and pinned above everything, ready for typing. No launcher, no window to hunt for, no filename dialog. The first line becomes the title, and the title becomes the filename.

02 · FOLLOW

Move on. It moves with you.

Switch workspaces and the note is still there, pinned in the same place over the new windows. One note for your whole session, not one per screen. Keep the todo list open while you work through it.

03 · DISMISS

Press Super N again.

Gone. Karatasi hides instead of quitting, so the next toggle is instant and lands exactly where you left off. Esc and Super W do the same thing. The binary stays warm in the background inside a memory-capped systemd scope.

04 · TILE

Want it to stay? Tile it.

Super T is Omarchy's own float toggle, and Karatasi plays along. The floating note becomes an ordinary Hyprland window, tiled into this workspace like everything else. It stops following you and lives here. Super T again floats and pins it.

05 · AGAIN

Super N still works.

The tiled note stays where it is. Super N gives you a fresh floating note on top, empty and pinned. Ctrl Shift N opens another window that matches the one you're in: floating from a floater, tiled from a tile.

06 · BELONG

It wears your theme.

Colors come from the active Omarchy theme and follow it live. Change the theme and the note changes with it. So does this page.

Font and size follow Omarchy too, or set your own in config.toml.

Fully local

Nothing leaves your machine.

There is no account to create, no cloud to sync to and no service that can go away. Karatasi is one binary that talks to Hyprland and writes markdown files to a folder.

0

Accounts

No sign-up, no login, no free tier. Install it and press the key.

0

Servers

No sync backend and no API. Sync ~/Notes with whatever you already trust, or don't.

0

Telemetry

The only things Karatasi connects to are Hyprland's socket and your disk.

.md

Files

Grep them. Open them in Neovim. Put them in git. They were never anything else.

~/Notes
 ls ~/Notes
Landing page.md  Standup.md  Welcome to Karatasi.md

 rg -l "karatasi.app" ~/Notes
/home/hr/Notes/Landing page.md

 head -4 ~/Notes/Standup.md
# Standup

- [x] Landing page copy
- [ ] DNS for karatasi.app

 
Markdown

It's just markdown.

Type - for a bullet, [] for a todo, # for a heading and --- for a divider. Bold and code render as you type. This is the note Karatasi writes on first launch. It's a file like any other, so here it is twice: as you see it, and as it sits on disk.

- bullet 1. numbered [] todo # heading ---divider **bold** `code` Ctrl ⏎ done Ctrl ↑↓ move
Karatasi

Welcome to Karatasi

Floating notes for Omarchy. Karatasi is Swahili for paper: somewhere to jot things down. Every note is a plain markdown file in ~/Notes, and this one is too, so edit it or delete it.

Keys

  • Super N show or hide the notes window, from anywhere
  • Ctrl K search every note
  • Ctrl N new note
  • Ctrl Shift N new note in its own window
  • Ctrl Enter finish the line: tick a todo, strike through anything else; again to reopen it
  • Ctrl Shift Enter turn the line into a todo, or back
  • Ctrl Shift K delete the line or list item
  • Ctrl ↑ and Ctrl ↓ move the line or list item up and down
  • Ctrl [ and Ctrl ] previous and next note
  • Ctrl Shift Backspace delete the note (it goes to the system trash; click the toast to undo)
  • Esc or Super W hide the window
  • Super T tile the window, Super T again to float it

Every key above except Super N and Super T can be changed under [keys] in ~/.config/karatasi/config.toml, for example delete = "Ctrl+D"; the README lists the names. To toggle notes with a different key, put a line like this above the dofile("/usr/share/karatasi/hypr/karatasi.lua") line in ~/.config/hypr/hyprland.lua, then reload Hyprland:

karatasi_toggle_key = "SUPER + ALT + N"

Writing

Type - for a bullet, 1. for a numbered list, [] for a todo, # for a heading and --- for a divider. **bold** and `code` work as you type.

  • Try ticking this
  • Already done

The first line is always the title, and the file is named after it.

Windows

The main window floats, stays pinned above everything and follows you across workspaces. Tile it with Super T when you want it to live on one workspace instead. Super N then gives you a fresh floating note and leaves the tiled one alone. Ctrl Shift N opens a new note that matches the window you are in: floating and pinned, or tiled.

Search

Ctrl K searches titles and contents. Enter opens the note here, Shift Enter opens it in its own window, and Ctrl Enter creates a note titled with what you typed.

Saved · just nowCtrl K search Ctrl N new Ctrl ⏎ done Esc hide
~/Notes/Welcome to Karatasi.md

            
Keys

Keyboard native. Launch with Super + N and go from there.

All key bindings are configurable in ~/.config/karatasi/config.toml, by hand or via your agent. Edits apply live. Super N and Super W are Hyprland bindings set in one Lua line; Super T is Omarchy's own.

KeyAction
Super NShow or hide the notes window anywhere
Super WHide the main window, close any other anywhere
Super TTile the window, or float it again Omarchy's binding
Ctrl K Ctrl PSearch every note
Ctrl NNew note
Ctrl Shift NNew note in its own window
Ctrl EnterFinish the line: tick a todo, strike anything else; again to reopen
Ctrl Shift EnterTurn the line into a todo, or back
Ctrl Shift KDelete the line or list item
Ctrl ↑ Ctrl ↓Move the line or list item up or down
Ctrl [ Ctrl ]Previous or next note
Ctrl Shift BackspaceDelete the note (system trash; toast to undo)
EscHide the main window, close any other
In searchAction
Ctrl J Ctrl KMove selection
EnterOpen in the main window
Shift EnterOpen in a new window
Ctrl EnterCreate a note titled with the query

Search matches titles and contents, fuzzily. Ctrl K from any note; type, Enter, keep going.

# ~/.config/karatasi/config.toml
notes_dir = "~/Notes"
font_size = 16

[keys]
search = ["Ctrl+K", "Ctrl+P"]
done   = "Ctrl+Enter"
delete = "Ctrl+D"  # any chord you like
Install

Two commands. Then Super N.

Karatasi ships as a prebuilt pacman package and a single Tauri 2 binary. The setup script wires it into Hyprland and starts the background instance so the first toggle is already instant.

Install the package

A prebuilt package from the latest GitHub release for both architectures Omarchy runs on; pacman resolves the dependencies. uname -m expands to x86_64 on Intel and AMD machines and aarch64 on Apple Silicon, so the same line works everywhere.

$ sudo pacman -U https://karatasi.app/karatasi-$(uname -m).pkg.tar.zst

Or spell it out: karatasi-x86_64.pkg.tar.zst for Intel and AMD, karatasi-aarch64.pkg.tar.zst for Apple Silicon. Prefer to build it yourself? Clone the repo and run makepkg -si in packaging/.

Wire it into Hyprland

Adds one dofile line to ~/.config/hypr/hyprland.lua that loads the bindings and window rules, reloads Hyprland and starts Karatasi hidden. karatasi-setup --remove undoes it.

$ karatasi-setup

Press Super N

The welcome note above is waiting. Everything after that is yours.

Change the keys

Set any of these above the dofile line. Super N is unused by stock Omarchy; Hyper N is a popular alternative on keyboards with a Hyper key.

-- ~/.config/hypr/hyprland.lua
karatasi_toggle_key = "SUPER + CTRL + ALT + SHIFT + N"
karatasi_close_key  = "SUPER + W"  -- false to leave Omarchy's alone
karatasi_autostart  = true
dofile("/usr/share/karatasi/hypr/karatasi.lua")

From source

Rust and Node. scripts/install.sh builds the frontend and the binary and installs to ~/.local/bin. Details in the README.

Command line

$ karatasi [show|toggle|hide|search|new|start]

A second invocation forwards the action to the running instance over a unix socket. The Hyprland binding is just karatasi toggle.