[HN Gopher] Show HN: Bonsplit - Tabs and splits for native macOS...
___________________________________________________________________
Show HN: Bonsplit - Tabs and splits for native macOS apps
Author : sgottit
Score : 227 points
Date : 2026-01-25 11:56 UTC (18 hours ago)
(HTM) web link (bonsplit.alasdairmonk.com)
(TXT) w3m dump (bonsplit.alasdairmonk.com)
| jofzar wrote:
| I don't know why, but I thought this was going to sandbox style
| tab/split support for the all the baselines macos apps.
|
| This is very cool, but somehow got myself disappointed that
| something I didn't know I wanted doesn't exist.
| ziml77 wrote:
| You're not the only one. I first assumed it was a library when
| I was scanning the headlines, but then when I started opening
| up tabs moments later I thought it added tabs and splits to
| existing apps. I remember something that brought tabs system-
| wide to Windows so it's not even too crazy of an idea.
| krispyfi wrote:
| Yes, I assumed it was a macos equivalent to suckless-tabbed.
| https://tools.suckless.org/tabbed/
| goranmoomin wrote:
| This is very interesting, I haven't touched macOS development for
| quite a while but it's good to know that libraries are still
| being written for both AppKit and SwiftUI on macOS.
|
| I do feel that this library would benefit from an explanation on
| why this was needed. AFAIR AppKit already provides a native
| tabbing API where you can "just" (that "just" is doing a lot of
| heavy lifting) implement a few delegate methods and you get
| tabbing behavior for free, especially on document-based apps.
| (Sorry, I do not remember the specifics, it might have been a tad
| more difficult)
|
| I'm not updated on the SwiftUI equivalent, but I would imagine
| that a similar API would exist much alike API for multiple
| windows or multiple documents.
|
| I think everyone would benefit from a "why" explanation (which I
| definitely think would exist, since I've used too many AppKit
| APIs in pain), and also some screenshots for a demo app (so that
| we can expect how it would look and how much the look and feel
| would deviate from the native counterparts).
| zapzupnz wrote:
| The website already has a demonstration of what this does that
| native tabs don't do and how they look.
| goranmoomin wrote:
| Yeah I realized that only now, for some reason when I was on
| mobile and I was looking into this the demo video was not
| loading at all. I would love to retract my comment :(
| brianfryer wrote:
| I totally missed the video on mobile too.
| saagarjha wrote:
| Native tabs work at the window level.
| atombender wrote:
| I've tried the native tab support several times, and my
| impression is that it's good for very little.
|
| It may be OK for certain types of document-oriented apps, but
| there's a reason most apps (Chrome, iTerm, even Safari uses its
| own native tabs, I believe) don't use it. It's underbaked and
| awkward to fit into a model where your "tab data model" doesn't
| neatly fit the document data model that the framework wants.
|
| I recently made an app where I wanted tabs, and I just ended up
| abandoning tab support for this reason, and adding a todo item
| to use an off-the-shelf tab UI library in the future.
| loceng wrote:
| Easter egg: Click the logo!
| iLoveOncall wrote:
| The title really should include "library"...
| publicdebates wrote:
| Honestly yeah.
|
| I clicked it thinking it was an MDI app.
| publicdebates wrote:
| This is excessively beautiful, both the website and the library's
| UI.
|
| But I have to ask: what's the rationale on dedicating such an
| elaborate and gorgeous website for just a library? Are you hoping
| to get hired for web design? Are you seeking fame and repute? Do
| you merely do it for the love of the game? Why, for the love of
| all that's good, pray tell _why_ put all this effort into _mere
| documentation_?
| chris_st wrote:
| To set the bar for other websites, to show how it _should_ be
| done?
|
| Or maybe just "for the love of all that's good"?
| drewradcliff wrote:
| Just look at his website and you'll see why.
|
| https://www.alasdairmonk.com/
| Hnus wrote:
| Author seems to be one of the colleagues you are like I wish
| to be more like him.
| dozerly wrote:
| I don't think he needs the experience on his resume lmao. He's
| an experienced design professional that's worked at a bunch of
| big name companies as a lead designer.
| jitl wrote:
| Why make good things? I guess we should make bad things. Or no
| things.
| treetalker wrote:
| - library
|
| - functionality/effect looks like Sublime Text origami mode
| dmoose wrote:
| This is quite beautiful. I had a somewhat similar use case last
| year and built something that wasn't this polished. The only
| feature that seems to be missing for what I needed then is the
| ability to tear off tabs into new windows that could also be
| dragged back into the frame to reattach. Will definitely be
| keeping this project in mind for future needs.
| iamcalledrob wrote:
| Love the attention to detail here.
|
| Getting drag and drop right is _hard_ , it's so much more complex
| than you might think.
| jbverschoor wrote:
| "Tabs and splits" should be something the window manager takes
| care of
| ggoo wrote:
| Really depends on the application, no? I wouldn't want my IDE
| opening every file in a new window.
| jbverschoor wrote:
| That's why the windows manager and user should be in control
|
| I'd love to be able to arrange different tabs of different
| apps in one window
| rob_ wrote:
| My favourite window manager in linux was always ion3 that then
| became known as notion. I'm not sure if it was one of the first
| tiling/tab/split window managers but I started using it around
| the year 2000 and loved it. One feature that it seemed to have
| that a lot of other tiling windowmanagers didn't have is tabbed
| splits. Really nice to see this.
| 0xb0565e486 wrote:
| I love how beautiful and creative the website header is while
| being a fragment of what it does. Fantastic work!
| jen20 wrote:
| This looks like a great library, and I'm happy to see focus on
| proper native Mac apps over Electron.
|
| One odd thing, the library doesn't have a license associated with
| it (in the repo, at least).
| kocialnews wrote:
| This is interesting
| ahmadyan wrote:
| This is an awesome library, thank you so much for making it. I
| just ported it to my IDE, agentastic.dev, and works like a charm.
|
| https://assets.agentastic.ai/agentastic-dev-assets/videos/0....
| w10-1 wrote:
| Fantastic! Managing views in eclipse like this is one of the
| things that keeps me using eclipse.
|
| From looking at the demo and the docs...
|
| What I didn't see in the demo was changing the order of a tab
| within a panel via drag-and-drop (no "allowIntraPaneTabMove"?).
| Also presuming you can close tabs to left, right, or all other
| tabs (would need tabs as list to implement this in application).
| Also might like to somehow manage title elision when there are
| multiple tabs. Also want to change pane proportions on the fly.
| Also assuming one can have two views of the same document in
| different tabs.
|
| So many possibilities! I'll try it in some app...
___________________________________________________________________
(page generated 2026-01-26 06:00 UTC)