StickyWords

Version 3.0.0 · Windows

The words you are learning, on the screen you are already looking at.

A small always-on-top note for the Windows desktop that quietly cycles through the words you are learning — and, on request, says them out loud.

Windows 10 or 11. No account, no cloud, no telemetry.
The Microsoft Store listing is on its way.

¡Buenos días!
[BWAY-nos DEE-as]
Good morning!

247 × 103 px, translucent — hover it for the toolbar

The premise

Ambient exposure rather than deliberate study.

There is no session to start, nothing to grade and no streak to keep. The note occupies a corner of a screen you are already looking at for other reasons, and shows the next word every few seconds while you work.

That premise drives every interface decision: the window has no title bar, its toolbar appears only on hover, and the rotation pauses by itself when the pointer comes near — so a word never changes out from under you mid-read.

What it does

Small enough to ignore, present enough to work.

StickyWords ships no curriculum. It drills the list you built from a class, a novel, a job or an exam.

The note

Frameless, always on top, translucent
Five opacity steps from 100 % down to 20 %, kept off the taskbar and out of Alt-Tab so it stays clear of real work.
Timed rotation
A word holds for 1, 2, 3, 5, 8 or 13 seconds, in list order or at random, drawing only from the words still active.
Two-stage reveal
The word can appear alone first, its meaning following halfway through its turn — the closest the app comes to testing recall. Meaning first inverts the prompt, so you recall the foreign word rather than read it.
Retiring a word
One click deactivates whatever is showing and writes the file immediately. The word stays in the list but leaves the rotation.
Drag with edge snap
The note snaps to the edges of the work area, is clamped back on screen if a monitor disappears, remembers where you left it, and locks in place against an accidental nudge.
Three colour schemes
Amber, Mint and Slate, applied across every screen, menu and dialog.

Pronunciation

The voices already on your PC
Speech comes from SAPI 5, reading both voice registries — so the voices Windows Settings installs are found alongside the classic ones. Nothing is synthesised anywhere but on your own machine.
A missing voice is an offer, not a dead button
When nothing on the machine can say the list's language, the Pronounce button becomes an install icon and opens Windows' Speech settings directly. It switches back the moment the app detects the new voice.
Three states in one button slot
It speaks when a voice matches the list's language; it points at the Windows voice installer when nothing can; it greys out only when there is no word on screen to say.
184 languages to label a list with
Not only the ones your machine can already speak — the point is often to install that voice next. The picker marks which is which.

Word lists

An editable grid
Number, word, pronunciation, meaning and an Active box per row, all edited in place, with a filter box for finding a row in a long list. Tab steps from cell to cell and Enter on the last row starts another, so a list can be typed straight through without the hand leaving the keyboard.
CSV import in a single dialog, not a wizard
The preview table's column headings are the mapping dropdowns, the separator is detected, and the status line runs the real parse as you change things — it promises Will import 74 of 76 rows before you press the button. An import can replace the open list or append to it.
Open, save, save as, new
With unsaved-changes prompts throughout, and output byte-identical to StickyWords 2's.
Per-list settings travel inside the file
A list shared with someone else arrives already tuned.

Desktop integration

Tray icon
The note is frameless and off the taskbar, so the icon is the app's other handle. Left-click brings a note dragged off-screen back into view; the right-click menu mirrors the toolbar.
Start with Windows
From the Options menu, written straight to the registry so it can never go stale against a file.
Reopens your last list
On launch, or one passed on the command line.
One instance only
A second launch focuses the running note instead of opening a second one.
Per-word display counts
They accumulate across sessions, keyed so that fixing a typo does not orphan a word's history.

A look inside

Screenshots

Every screen carries the colour scheme you picked for the note.

assets/img/shot-wordlist.png1280 × 800
The word list — every cell edited in place, with a filter box for finding one row in a long list.
assets/img/shot-csv.png1280 × 800
CSV import — the preview headings are the mapping dropdowns, and the status line counts the rows that will actually land.
assets/img/shot-languages.png1280 × 800
184 languages to label a list with — the picker marks which ones your machine can already speak.
assets/img/shot-schemes.png1280 × 800
Amber, Mint, Slate.

Your words, your files

One list is one small file you own.

A word list is a .sws file: plain JSON holding a settings object with that list's display preferences, and a words array. You can read it, diff it, keep it in a folder you back up, or email it to someone else.

Empty values are left out rather than written as "", and the encoder is byte-exact — fixed key order, two-space indent, \n endings.

Fields the app does not recognise are kept and written back, so a list touched by a newer version does not come out stripped. That is why the format is JSON: through StickyWords 2 it was XML, whose attributes can only hold flat text, and anything worth adding next — tags, several meanings, example sentences, review scheduling — is a list or an object.

StickyWords 3 cannot read the old XML lists.

spanish20.sws
{
  "version": 1,
  "settings": {
    "lang1": "es",
    "lang2": "en",
    "showPron": true,
    "meanFirst": false,
    "randomWord": false,
    "waitForMean": false,
    "delaySeconds": 3
  },
  "words": [
    {
      "word": "¡Buenos días!",
      "pronunciation": "BWAY-nos DEE-as",
      "meaning": "Good morning!",
      "active": true
    }
  ]
}

Where your data lives

On your machine, and nowhere else.

Everything the app remembers sits in three files under %APPDATA%\StickyWords\. Word lists themselves live wherever you keep them.

FileHolds
settings.jsonWindow position, opacity, colour scheme, last list, and the settings with no menu entry
statistics.jsonHow often each word has been shown, across every session
StickyWords.logThe diagnostic log, plus StickyWords.log.1 once it rotates at 1 MiB

No account, no cloud, no sync and no telemetry — none of it is sent anywhere. Read the privacy policy.

Keyboard

Shortcuts in the word list window

KeyAction
Ctrl + N / Ctrl + ONew list / open
Ctrl + S / Ctrl + Shift + SSave / save as
Ctrl + FJump to the filter box
Insert / DeleteAdd / remove a word
Ctrl + SpacePronounce the selected word
EscClose the window

Since 1998

The third time around.

1998

The original StickyWords. One note, one list, one idea that turned out to be worth keeping.

2019

StickyWords 2, a Free Pascal application. Its word lists are still written byte-identically today.

2026

StickyWords 3, rewritten in Flutter: a new file format, real voice support, and the same small note.

Download

Put a note in the corner of your screen.

Windows 10 or 11. Nothing else — no account, no runtime to install, and no network connection.

Version 3.0.0. The Microsoft Store listing is on its way.