I wanted to share how I organize my workspaces in niri and see if anyone has suggestions for improvements.
Currently I have three main workspaces that I switch between regularly. My first workspace is dedicated to web browsing where I keep Firefox or Chrome open for research and general web stuff. The second workspace is where I do most of my development work with terminal windows and API testing tools like Postman or Insomnia running side by side. My third workspace is purely for media consumption like watching videos, listening to music, or viewing images.
This setup works pretty well for me but I feel like there might be better ways to organize things. What workspace layouts do other niri users prefer? Are there any productivity tips or workflow optimizations that I should consider trying out?
I’ve run niri for 8 months and tried several setups before finding what works.
Your three workspace setup is solid, but adding a fourth changed everything for me. I keep all communication (Slack, email, calls) separate from dev work. Notifications while debugging absolutely kill focus.
Workspace-specific keybinds were a game changer. Different terminal profiles auto-launch based on workspace - workspace 2 opens with my dev environment ready, correct directory, shell aliases loaded.
For media, I use floating window rules for my music player so it overlays other workspaces. No more switching just to skip tracks.
Biggest improvement was dedicating workspace 1 to documentation and references only. Stack Overflow, API docs, project wikis. Research stays separate from browsing. Context switching isn’t jarring when you’re deep in a problem.
Used niri for six months and went through the same workspace struggles. Started with three but kept juggling windows constantly. Thinking vertically changed everything. Workspace one: planning and notes - task managers, markdown, docs. Two: active coding with editor and terminals. Three: testing and debugging. Four: comms and monitoring. Game changer was niri’s window rules for auto-assignment. Terminals automatically hit workspace two, browsers go to one or three based on domain. No more manual shuffling. Add a scratch workspace for random stuff - quick calcs, temp files, utilities. Keeps your main spaces clean while handling daily chaos.
Your setup’s already solid. I found niri’s column layout way more useful once I stopped fullscreening everything. Now I tile vertically - editor left, terminal right, browser in the middle for docs. Cuts down workspace switching big time when I’m coding and need to check something fast.
Been messing with niri workspace configs for about a year. Game changer was ditching app-based workspaces for task-based ones. Don’t group by browser vs terminal - group by what you’re actually working on. Naming workspaces properly is huge. Skip the numbers, use real descriptions like ‘backend-api’ and ‘frontend-ui’. Now I can keep docs, terminals, and testing tools together per project instead of hunting around. Best trick I found: workspace templates in niri’s config. Set up predetermined layouts and apps for each workspace. Hit the API workspace and everything launches exactly where it should be. The real magic happens with focus-follows-workspace plus different wallpapers for each space. Visual cues are clutch when you’re jumping between projects all day.