Noteki — Sticky Notes for Windows

Noteki

Modern, lightweight, customizable sticky notes that stay out of your way.

Python PySide6 Windows MIT Release EXE


Noteki is a modern sticky notes app that lives in your system tray. Press a hotkey, jot something down, and move on. It uses a transparent full-screen canvas — notes appear exactly where you left them, and disappear when you click away.

No accounts, no cloud, no bloat. Your notes stay on your machine.


Features

Feature Description
Always-on-Top Pin individual notes to stay above all other windows.
Custom Colors Add, remove, or change note colors dynamically. Text contrast is auto-calculated.
Session Management Create, clone, and switch between separate workspaces — perfect for different projects.
Global Hotkey Alt+N (configurable) toggles all notes from anywhere.
Undo/Redo Accidentally deleted a note? Ctrl+Z brings it right back.
Auto-Save Notes save instantly on focus-out. No manual saving needed.
Click-Through Click empty canvas space to hide notes and interact with windows behind them.
Keyboard Navigation Tab / Shift+Tab to cycle between notes. Esc to hide.
Start with Windows Optional — toggle in Settings. No admin rights needed.
Zero Latency Single-canvas architecture keeps CPU/RAM usage minimal when idle.

Quick Start

Option 1 — Download EXE (no Python required)

Grab the latest Noteki.exe from Releases and run it. That's it.

Option 2 — Run from source

git clone https://github.com/kullaniciadi/noteki.git
cd noteki
pip install -r requirements.txt
python main.py

Requirements: Python 3.8+, PySide6, Pillow.


Keyboard Shortcuts

Shortcut Action
Alt+N (configurable) Show / hide all notes
Ctrl+Z Undo last deletion
Tab / Shift+Tab Cycle focus between notes
Esc Hide notes
Right-click (empty area) Quick menu: new note, bring all to front
Right-click (on note) Color picker, copy, paste, delete
Double-click (note header) Focus text editor

Data & Privacy

All data is stored locally under:

%APPDATA%\Noteki\
      sessions\        One .json file per workspace
      settings.json    Your preferences
      logs\            Rotating logs (7-day retention)

Your notes never leave your computer. No telemetry, no analytics, no network calls.

If session.json gets corrupted, Noteki automatically recovers from session.backup.json.


Building the EXE

Want to build the standalone executable yourself?

pip install pyinstaller pillow

# Convert PNG icon to ICO
python -c "from PIL import Image; Image.open('assets/icon.png').save('assets/icon.ico', format='ICO')"

# Build single-file EXE
pyinstaller --noconsole --onefile --icon="assets/icon.ico" --add-data "assets;assets" main.py

The output will be in dist/main.exe. Rename it to Noteki.exe and you're done.


Project Structure

noteki/
  main.py                    Entry point
  requirements.txt           Dependencies
  assets/
    icon.png                 App & tray icon
  src/
    app.py                   Orchestrator — wires everything together
    canvas_window.py          Full-screen transparent canvas
    note_widget.py            Individual sticky note (header, text, resize, drag)
    add_button.py             Floating "+" button
    data_manager.py           JSON persistence, auto-save, sessions
    hotkey_manager.py         Windows global hotkey (ctypes + QThread)
    tray_manager.py           System tray icon & context menu
    settings_dialog.py        Settings window (font, color, sessions, hotkey)
    undo_manager.py           RAM-based undo queue (10-deep)
    constants.py              App-wide constants & color math

License

MIT — see LICENSE for details.


Built with and PySide6

Description
Mirror from github.com/alhan/noteki
Readme MIT 455 KiB
Languages
Python 100%