38

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

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.

Great tool — the auto-tiling grid and repo-based grouping are exactly what I've wanted. As smcleod mentioned, publishing the source would go a long way. A terminal has access to files, environment variables, and credentials by nature, so open source is often a prerequisite for adoption in developer workflows. Even a read-only mirror would help. Thanks for building and sharing this!

3 hours agoyeonsh

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.

a day agosmcleod

I'm on Windows and I would love to see such a easy solution for the windows terminal.

13 hours agoSeriousM

This is just something to scratch my own itch, I’m afraid, so no plans to build for any other platforms sorry!

13 hours agoolleeolleeollee

omg, the DMG weighs 3MB and the installed app is only 9MB. Amazing

a day agoLimeLimestone

Thanks for noticing

13 hours agoolleeolleeollee

Emoji got stomped, so ;-)

10 hours agoolleeolleeollee

Looks really nice! Super clean site too. How did you make the animation at the top?

a day agoreplwoacause

Thanks! Glad you like! The logo animation is an SVG with CSS keyframe animations.

a day agoolleeolleeollee

This is great, no more lost terminal screens!

2 days agojamesgresql

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.

a day agoolleeolleeollee
[deleted]
a day 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.

a day agoYizen

Thanks for giving it a shot! We do track hover state already but it's just visual right now — not wired up to actually focus the terminal. Focus-follows-mouse is a great idea though, should be easy enough to add in. Will explore.

9 hours agoolleeolleeollee

Thanks ! Another nice to have would be window reordering, but so far, really enjoying it as-is :)

an hour agoYizen

love this. thanks for sharing!

2 days agobillylo

Thank you! Give me a shout if there’s anything I can add or change that would make it more useful for you.

a day agoolleeolleeollee

> 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.

2 days agothrowaway290

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

a day agoolleeolleeollee

[dead]

a day agorrojas-nexus

[dead]

2 days agoeddie-wang

[dead]