Show HN: Waffle – Native macOS terminal that auto-tiles sessions into a grid

waffle.baby
olleeolleeollee
yesterday
38points
Hi HN. I built Waffle because I kept ending up with 15 terminal windows scattered across three spaces with no idea what was running where.

Splitting/merging in iTerm kind of works but it never felt intuitive to me.

With that in mind, I built something to suit my workflow:

Waffle is a native macOS terminal (Built on Miguel de Icaza's SwiftTerm) that tiles your sessions into an auto-scaling grid automatically. 1 session is fullscreen, 2 is side by side, 4 is 2x2, 9 is 3x3. Open a terminal, it joins the grid. Close one, the grid rebalances. No splitting, no config.

I've been using it a lot recently and one thing I've found really useful is that sessions detect which repo they're in and group accordingly. Each project gets a distinct colour. Cmd+[ and Cmd+] flip between groups. If you have three repos open across eight terminals, you can filter to just one project's sessions instantly. Also, no accidentally closing a window with CMD-W as it gives you a confirmation and requires a second CMD-W to close.

Honestly, if you live in tmux, this probably isn't for you but it's really helped to speed up my workflow.

Other things: It comes with a handful of themes (and has support for iTerm themes), bundled JetBrains mono, has keyboard shortcuts for everything. Free, no account, opt-in analytics only. macOS 14+.

There's a demo on the landing page if you want to see it in action.

15 comments

Comments

SeriousM14 minutes ago
I'm on Windows and I would love to see such a easy solution for the windows terminal.
olleeolleeollee8 minutes ago
This is just something to scratch my own itch, I’m afraid, so no plans to build for any other platforms sorry!
smcleod12 hours ago
I like the tiling concept but I don't see the source code linked, is this closed source? There's no way I'd run a terminal that didn't have publicly inspectable source, there's just too much that could go wrong.
olleeolleeollee10 minutes ago
Fair! I certainly could publish the source. It’s more or less just a wrapper for Miguel de Icaza‘s SwiftTerm:

https://github.com/migueldeicaza/SwiftTerm

LimeLimestone13 hours ago
omg, the DMG weighs 3MB and the installed app is only 9MB. Amazing
olleeolleeollee7 minutes ago
Thanks for noticing
replwoacause19 hours ago
Looks really nice! Super clean site too. How did you make the animation at the top?
olleeolleeollee18 hours ago
Thanks! Glad you like! The logo animation is an SVG with CSS keyframe animations.
jamesgresqlyesterday
This is great, no more lost terminal screens!
olleeolleeollee18 hours ago
Thanks! Let me know if there’s anything I can do to make it more useful. I thought in the next update I’d work on custom key bindings but if there’s anything more glaring, I’d love to hear it.
Yizen12 hours ago
Tried it, lean and elegant, amazing tool ! I like the "omarchy/wayland" auto focus of the tab when moving the mouse over, saves a click, this could be added as an option.
billyloyesterday
love this. thanks for sharing!
olleeolleeollee18 hours ago
Thank you! Give me a shout if there’s anything I can add or change that would make it more useful for you.
throwaway290yesterday
> Honestly, if you live in tmux, this probably isn't for you but it's really helped to speed up my workflow.

Fresh honesty, nice.

olleeolleeollee18 hours ago
Haha, I mean ever since launching this I’m learning of a zillion alternatives I should have probably tried earlier but for me the auto tiling is really the main thing and, as far as I can see, no other alternatives really do that for some reason? Maybe there’s a good reason but it suits my workflow anyway
brainymo4 hours ago
[dead]