"A desktop app that forgets where you put its window every launch feels broken — even when nothing is wrong."
The Smallest Polish That Matters Most
Users expect an app to reopen where they left it — same position, same size. Implementing that by hand (listen for move/resize, debounce, write to disk, read on startup, apply before show) is fiddly and easy to get subtly wrong. Tauri ships an official plugin, tauri-plugin-window-state, that does exactly this: it saves each window's geometry on exit and restores it on next launch, automatically.
Register and Forget
The beauty of this plugin is that it needs essentially zero application code beyond registration. You add it to the Builder chain and it hooks the window lifecycle for you. No commands to write, no events to wire — restore-on-open and save-on-exit just happen. It's the canonical example of a plugin doing one job well so you don't reinvent it.
A First Taste of the Three-Surface Rule
Adding this plugin touches three places, and noticing the pattern now will pay off in the plugins track: the Cargo.toml dependency, the builder registration in lib.rs, and (for plugins that expose commands to the frontend) a capabilities permission. window-state is mostly automatic, but it still appears in capabilities as window-state:default. Cinder registers this exact plugin so its window reopens in place — three surfaces, one behavior.