Skip to content
Lshika edited this page Aug 5, 2026 · 11 revisions

tuicc wiki

Honest disclaimer: this wiki is AI maintained. I revisit it at regular intervals to check facts and weed out anything that sounds like annoying AI-slop, but I still use claude code to push wiki updates — this is the price I chose to pay as the single maintainer for tuicc. Once refactoring slows down, I am committed to making this wiki as human-pleasant as possible.

Here lives the documentation for tuicc — the README covers what tuicc is and how to try it; this wiki contains more detailed info about architecture, decisions, exhaustive config info.. and directions about how to use tuicc or add new modules or providers!

Pages

  • Getting Started — If you just thought "this is cool, and I wanna try it, but I'm new to all of this / don't really understand what's going on.." Don't worry, I care and wanna help you to use tuicc <3, click on this page! (There's a one-command Quick install now too, if you just want it running.)

  • Architecture — how the core (provider layer, layout engine, input routing) fits together, the RenderContext pattern, tuicc's persistent-process lifecycle (dismiss vs. quit), and what my thought process was behind certain design decisions (floating window handling, why spatial navigation was tried and then removed).

  • Config Reference — everything config.toml - every accepted value, with examples. If you're customizing tuicc and the inline config comments aren't enough, this is for you.

  • Writing a WM Provider — an expansion to the README's version, including a step-by-step look at how I was building a provider against a real WM's IPC, and how to approach window layouts that don't map cleanly onto sway's model. (scrollable WMs are still haunting me in the depths of my backlog)

  • Writing a Module — how to build your own modules: they plug into tuicc's core without the core ever needing to know they exist, using the sidebar/preview/quick_actions modules as worked examples.

  • Keybindings — every key name tuicc understands (including the optional vim-style h/j/k/l bindings), how Tab/Shift+Tab-driven navigation actually decides where to go, and how to remap everything.

Status

tuicc is meant to run as one long-lived process your WM summons and dismisses, not something you relaunch each time — see Getting Started for the setup. tuicc is also still early and actively changing — pages here reflect the project as of early August 2026. If something here doesn't match what you see in the code, the code is right; open an issue and I'll fix the page.

Elsewhere

  • Main README — quick start, status, architecture overview
  • Issues — bugs, questions, provider requests

Clone this wiki locally