[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)