A translucent frosted-glass desktop memo & todo widget for Windows 11
A translucent DWM acrylic frost (or a custom static image background) floating todos, deadlines, and calendar events on the desktop.
中文 · English
- Frosted-glass skin (default) — a translucent surface built on Windows' own DWM acrylic effect: light on resources, crisp text, no GPU screen capture.
- Image background skin — upload and crop an image to use as a static background skin, switchable any time in settings.
- Tunable tint — adjust the frost's low-saturation background tint and customize the normal / urgent todo text colors.
Earlier versions also offered a real-time "liquid glass" D3D11 skin that captured and refracted the desktop behind the window. It was removed (buggy and heavy on size).
- Todo-focused surface — quickly add and check off items; completed items archive or stay dimmed in place (configurable).
- Deadlines (DDL) — each todo has its own deadline column accepting flexible formats
(
6-15 23:59,2026/6/15,6月15日); approaching deadlines change color and overdue ones are highlighted. - Urgent pinning — mark with
❗to turn the text red and pin it to the top. - Expand / collapse — expand to see everything, collapse back to a compact square.
- ICS / webcal subscription — paste a subscription URL in settings to auto-sync the next N days (default 7, up to 30) of events into a dedicated "日程" (Schedule) group.
- Offline cache — the last sync is persisted so events remain visible after a restart with no network; checked-off events stay remembered across re-syncs (dimmed + strikethrough).
- Three display modes: regular floating memo, sliding edge auto-hide, or an animated floating launcher that opens on click and retracts after the pointer leaves.
- Click-through — clicks over the translucent surface pass through to the desktop; only checkboxes and buttons capture input, so the widget never gets in your way.
- Native movement and sizing — move via
⋮⋮, resize collapsed mode from the bottom edge, or freely drag the launcher and have its position remembered. - Global wheel scroll — scroll through content when it overflows.
- System tray — tray menu for Settings, History, Show/Hide, and Exit.
- Launch at login — toggle start-with-Windows in settings.
⚠️ Windows-only (Win32 + DWM); will not run or build on other platforms. UI strings are Chinese; code identifiers are English.
python -m pip install -r .\LiquidMemoWidget\requirements.txt
pythonw .\RunLiquidMemoWidget.pyw # pythonw = no console window.\Build.ps1The build output is generated under dist\LiquidMemoWidget.
Install Inno Setup 6, then run (replace the version number with the one you are packaging):
.\Package.ps1 -Version <version>This creates:
dist\LiquidMemoWidget-Portable-v<version>.zipdist\installer\LiquidMemoWidget-Setup-v<version>.exe
Useful options:
.\Package.ps1 -Version <version> -SkipBuild
.\Package.ps1 -Version <version> -SkipInstaller
.\Package.ps1 -Version <version> -InnoSetupPath "C:\Program Files (x86)\Inno Setup 6\ISCC.exe"If -Version is omitted, the script falls back to $env:RELEASE_VERSION, then a v* tag on
the current commit, then 0.0.1.
Version tags such as v0.0.2 trigger the GitHub Actions release workflow. The workflow builds
the PyInstaller app, creates a Windows installer with Inno Setup, packages a portable zip, and
publishes both files to GitHub Releases.
App state (settings, window position, todos, history, calendar cache) is stored at:
%AppData%\Roaming\DesktopMemo_Pro\liquid-state.json
Writes are atomic (temp file + replace); a corrupt file is backed up as
liquid-state.bad-<timestamp>.json and a fresh state is returned.
The earlier real-time liquid glass skin adapted the D3D11 rendering core from ai12989757/WindowsLiquidGlass (MIT licensed). That skin and its engine have since been removed, and the third-party code is no longer distributed with the project.
See THIRD_PARTY_NOTICES.md for details.