Hacker News new | ask | show | jobs
by thiht 1058 days ago
I’ve used Arc as my main browser on my work laptop for the last few months and I love it! It solves pain points I’ve actively tried to solve with Firefox, but couldn’t.

It’s no surprise HN is skeptical about « yet another browser », so here’s what I like specifically about Arc:

- it supports tab tiling. I can see 2 tabs next to one another easily. This is NOT solved with window tiling, it’s clunky and clutters the space.

- it’s vertical tab support is good, and beautiful. Firefox also has vertical tabs via Sidebery and TreeStyleTab, but it’s pretty awful. It hacks on side panels to implement something looking like tabs, but the look and feel honestly sucks

- theming is very easy and beautiful. Also it works by « space »

- lots features dedicated to avoiding tab cluttering:

1. Tabs can auto close when inactive

2. Links that should open a new tab don’t open a new tab by default, they open a pop-in that I can expand to a dedicated tab if I want

3. Links outside of Arc (in a mail client, in a terminal…) don’t open a new tab, they open in a unique Arc window (Little Arc), and I can expand them in a dedicated tab if I want

4. Spaces and profiles allow to organize the tabs properly

- it also integrates with a few websites, for example it can display infos directly on some non-open tabs. On my GitHub tabs, it shows the number of PRs awaiting my review. If I hover on my Google Agenda tab, it display a small agenda for the day without opening a tab

I’m sure I forget a few things that I like. None of these features individually would make me switch to Arc, but seeing all of it at once made me try it, and I don’t regret it.

Also their release notes are fun to read.

5 comments

Arc is pretty good. The vertical tabs are great, and the same tab list appears in all other windows you have open. For someone who easily loses track of tabs, this helps dramatically, and prevents the situation where you have multiple windows open, each with similar tabs.

The other great feature is the "Little Arc" window that appears when opening links in other apps. This lets you check something out, close the window, and resume what you were doing, preventing you from getting sucked into the Web and away from the conversation you were having.

I don't find much else compelling, but these are both really nice. For some reason, I don't care at all about the tiling system or the Boosts feature (modifying pages to remove elements, change fonts, etc) even though people talk about those a lot. If they can think of one or two more really useful features (and communicate them properly on the website) then they'll gain a lot of users.

At least, they'll gain a lot of users on the Mac. The biggest downside is the lack of Windows and Linux support. They're working on Windows. I don't see them doing Linux at all, but who knows.

Why wouldn't they do Linux? Isn't the whole benefit of browsers that they're the internet's compatibility layer, and shouldn't support be kinda baked into Chromium? Missing a chunk of (hopefully passionate in a good way) users like that sounds like a missed opportunity.

That said it's probably fine for them to iterate for Mac customers first, like apps releasing on iOS first before supporting Android.

As I understand, Arc doesn’t use the UI framework that’s baked into Chromium and instead uses SwiftUI. To facilitate a Windows port, they’re building on existing community work to write a SwiftUI implementation for Windows.

Following this if they were to port to Linux they’d probably write a GTK-based SwiftUI implementation, or if they wait for Swift C++ interop perhaps a Qt-based implementation.

> To facilitate a Windows port, they’re building on existing community work to write a SwiftUI implementation for Windows.

Can you expand on this? I haven't the foggiest idea how this would work in practice.

Well Swift already builds on Windows, but obviously that does not come with much of what you might use to write a Mac app. The biggest holes to fill are those not covered by the open source version of Foundation (which thankfully, Apple is working on filling) and those left by the absence of AppKit/SwiftUI. So most of their hole-plugging is going to be centered around SwiftUI and whatever bits of AppKit beyond SwiftUI they may be using.

The SwiftUI API is mostly "just" a DSL built with result builders[0] and should be reproducible without too much trouble. The harder part is reimplementing all of the behavior concerning diffing, rendering, etc, and actually drawing the widgets. Last I knew, their plan is to use community built WinRT/WinUI Swift bindings (perhaps this[1]) as a starting point to marry native Windows widgets to their recreated API. It may be necessary to write some widgets from scratch though, because there are several types that WinUI currently lacks.

It's a gargantuan task they've taken on, but I'm watching intently because despite being the world's most popular platform, the native Windows dev story is currently pretty underwhelming.

[0]: https://www.swiftbysundell.com/articles/deep-dive-into-swift... [1]: https://github.com/ericsink/SwiftWinRT

That's fascinating, thank you for the response.

I find programming user interfaces in SwiftUI to be an absolute joy, and if there were proper bindings to GTK and WinUI then it would be my go-to GUI framework for time immemorial.

The SwiftWinRT project looks interesting -- unfortunately, it seems to be abandoned (last commit was ~1 year ago).

Here's hoping they succeed. If they do, it could totally displace Qt as the standard cross-platform GUI framework (caveat - not for all use cases, of course).

Vivaldi works on Linux (well, Ubuntu at least) and has top-notch tab management
I disagree that Tree Style Tabs are awful. I use it every day and it's rock solid.

Firefox forever, yo! Whitest guy ever tries to make an F gang sign with his fingers

Long time TST user here. Yeah, it's actually very stable, even after the it became a WebExtension.

Last year I've used Sideberry extensively. It has some nifty features that TST does not have.

Do these two extensions look native to their host OS? Nope. I can live with that if don't need to use another closed source Chrome clone.

Sideberry doesn't look native, but I use TST and it looks exactly like the Firefox tabbar
> I disagree that Tree Style Tabs are awful.

Curious, what display/screen size are you mostly using?

I find TST quite hard to use on a Macbook / Laptop screen... it's much better on a bigger screen though, and best when using a second/separate display/window for it.

4k screen, but run at the standard hidpi on macOS. I also use it on an m1 MacBook pro screen.

My standard setup is 3 screens: portrait, landscape, landscape. I run the browser on either of the landscape screens depending on what I'm working on.

Thanks, so when you use it on the Macbook, do you use a second screen for it also?

I often use my iPad as a secondary screen to show the TST window when using my Macbook... but find it hard to use with only the Macbook screen.

So curious how you'd do that / set it up when only using the Macbook screen.

When only using the MacBook, I make use of ctrl-uparrow to switch between browser and VSCode. I have tree style tabs in the Firefox sidebar, not a separate window.
Thanks for your feedback, i'll have to give TST in the Firefox sidebar another try...

> "I make use of ctrl-uparrow to switch between browser and VSCode"

I use the Contexts app (Fast Search) for that - https://contexts.co/

To each their own I guess!

To be clear maybe the term « awful » was a bit harsh, I don’t want to shit on TST/Sidebery, I know the limitations they face on Firefox. I said it multiple times, but I’m mad that seeing the relative success of TST/Sidebery in their add on catalog, Mozilla didn’t invest anything in experience around vertical tabs, and tabs in general. Arc is fundamentally a big rethinking of what tabs should/could be in a browser.

Why would you want your browser to manage themes and window management (tiling, links outside of web) while it is the job of the OS/desktop environment?
Part of the reason is that this is a macOS browser. macOS's window management is a joke. But I think I'd use the tab tiling on Linux too, I do a lot of work with tiled browser windows and it's great, but also sucks when you want to have a window very small horizontally and the browser's UI gets squished along with any extension menus you're trying to use. Arc doesn't have that problem, you always have access to the full UI.
Arc specifically has that problem. I use a tiling window manager on macOS (guess what, they exist!) and Arc doesn't play nice with it, specifically because of the vertical-only tab bar.
Doesn't that argument apply to tabs also? Eg IE6 days where there were no tabs, and everything was deferred to the OS/desktop window management. It was clunky and painful.
I consider that an indictment of window management, not browser UIs.

I used [0] to use EXWM + qutebrowser in tabs_are_windows [1] mode. Being able to switch between tabs/open files/IRC rooms/whatever else emacs can do with fuzzy buffer searching felt like computer enlightenment.

[0]: EXWM runs in emacs's normal lisp environment which sometimes blocks the thread that EXWM listens for events on... this is obviously untenable and I never got around to finding out how to avoid this

[1]: https://qutebrowser.org/doc/help/settings.html#tabs.tabs_are...

It should. Browser developers started introducing tabs because OS like Microsoft Windows and Mac OS were lagging in term of UX but that doesn't mean this is where it should ideally go. This was just bandaid.
Because I disagree on that
This made me laugh, it’s a perfect response to someone stating a preference as if it were a law of computing.
Because it works better like this.
On a desktop with a shitty UX. Using the lowest common denominator doesn't help.
> tab tiling

I think tab tilling in Arc is only good if you use ultrawide screen and/or stay in browser for your workflow, other wise it's yet another layer of window management (windows, tabs, tiles in windows) you have to remember.

When you use smaller screen it would be good if instead of resizing the tiles to try to fit the sreen, maybe keep them the same size but alow horizontal scroll to go through them?

> Firefox also has vertical tabs via Sidebery and TreeStyleTab [...] but the look and feel honestly sucks

I wrote a custom stylesheet for Tree Style Tab years ago. Did you do this, and if so, what did you find lacking afterwards?

With Firefox on macOS and to a lesser extent Windows there’s some jank at play, for example when hiding/showing the sidebar you sometimes see a white flash as it redraws. It feels a bit duct taped together.