Readit News logoReadit News
hyferg · 5 years ago
Hello, I’m Cameron and one of the two people working on the Bonsai web browser.

We’re focused on making a web browser for programmers to improve their workflow. It helps you look up docs and search information. You can toggle it on with a hotkey and it can overlay on your IDE. Tabs are grouped by domain for easy organization. The history data structure is a tree which shows how pages are back-linked to each other and to spatial workspaces. Both open tabs and pages in your workspaces are just pointers to a node in your history tree!

You can watch a 2 minute video walkthrough here https://www.loom.com/share/93c7c0012f514c37b58a42fa65badc88 or download it from our website

How did we end up here?

Initially we wanted to make a citation manager because myself and a friend had an unconnected workflow moving research articles from Chrome -> Zotero -> Emacs org-mode. After talking to some other PhDs/postdocs the takeaway was that everyone has very different ways of doing research. This would mean that it would be impossible to make a citation manager that everyone would want to use.

Later, a friend in industry mentioned that he had a hard time finding ‘cloud documents’ as part of his job. We then considered making a spotlight application to find and organize these documents. It turns out that this already been done and it seems that people actually just pull up their documents once at the beginning of the day anyway.

We now think that the main problem is that web browsers are actually not currently suited for doing research. The current mixing of research type browsing with web-documents creates a mess and makes people think they want a ‘cloud file search’.

What’s different?

Instead of an add-on solution to Chrome which would create more noise, we are creating a fully functioning, organized way of managing information overload and keeping you on task as you go through your work day.

What’s next?

We are fixing up our Linux and Windows versions for public use.

anigbrowl · 5 years ago
Love it, this is the most innovative thing in the browser space for a long while. It's baffling to me how boring most 'new' browsers are - most propositions are 'like X but with less friction on these 2 or 3 things'.

I hate that it's only for Mac so far, but glad to see others are on the way. I've been thinking about picking up a cheap older mac for development work, though, and this is one more reason in favor.

LeftHandPath · 5 years ago
I love the spatial organization. I, not even five or six hours ago, had made a note on my iPhone describing something just like it (except where you would get to the spatial organization view by dragging down the bar at the top of the window). My thought was that we (humans) can remember spaces quite well, and certainly much better than we can track a tab's location in an ever-expanding list. IMO, spatial organization should replace bookmarks (and tabs should be treated as bookmarks unless the user has interacted with them since the browser was opened. Maybe I use tabs in a weird way).

Will definitely have to give this a try when it makes its way to other operating systems.

badassiel · 5 years ago
It just so happens I was thinking about spatial org just yesterday, that it would be so nice if I can have 'villages' of tabs on a (geographical) Map. Amazing co-incidence that I woke up to bonsai browser notification!

You might find The Humane Representation of Thought[1] by Bret Victor[2] useful, where he demonstrates by example, how existing tools/software (generally speaking) doesn't utilize all the 'superpowers' that we acquired via evolution.

---

[1]: https://www.youtube.com/watch?v=agOdP2Bmieg

[2]: http://worrydream.com

Edit - grammatical fixes

bear8642 · 5 years ago
> when it makes its way to other operating systems.

know you're referring to browser, but an OS - I think Oberon - had desktop as much larger than screen leading to ability to zoom around and create piles of windows

maydup-nem · 5 years ago
Innovative? I have been using qutebrowser for a while, and don't see the appeal of this. I just press a binding, start typing the name of the tab (fuzzy), get the list of matches, choose and there I am. As a basic example among many. Nyxt is just as powerful, if not more.

If you like visual layouts like the one offered then OK, but not me, I think it's distracting and unnecessary.

BTW the headline is blown af

uxcolumbo · 5 years ago
Just because it's not useful or innovative to you, doesn't mean it isn't to others.

It's always good to have more players in this game and to me what they are trying to do seems more approachable than the examples you showed.

Existenceblinks · 5 years ago
> I think it's distracting

I'm confused why the thread got so much upvotes, and a lot of comments made me more confused. Not trying to be rude, but I don't really understand the usefulness ..

davidatbu · 5 years ago
I'm an avid qutebrowser user too! Thanks for introducing me to Nyxt. I'm curious, why are you using qutebrowser if Nyxt is _at least_ as powerful as QB?
mavhc · 5 years ago
Is that the same as ctrl-shift-a in Chrome?
culopatin · 5 years ago
Not sure if you’re truly always that pedantic or if you are some sort of troll. Good for you that you enjoy something different, but I doubt anyone thinks “I think this is innovative, but let me check with maydup first because he knows it all”.
crazy_horse · 5 years ago
I'm surprised to see you so excited about this. Have you used tiling window managers? What does this and a rofi or similar component not have, or a gnome3 script? Not as convenient, yeah.

The big concern I would have if I were these guys is their magic is their UI, apparently, and they've given it away. If they truly have something good, it's some Electron windows inside a gui kit. Not to understate the work, but the work is ahead of them, too.

anigbrowl · 5 years ago
I've been griping about the tedium of trying to organize tabs (and to a lesser extent bookmarks) for a long time. I typically have hundreds of tabs open and my sanity maintenance method is to keep their number under 256. They're somewhat organized with tab groups but the overhead of managing them is a huge pain point for me. So the visual categorization and search looks like a huge win. I don't care that much about the other stuff tbh :)

Visual organizational tools are very important to me. Even if I'm in the IDE and thinking in code, when I jump tot eh browser for something I want the experience to visual and low-friction, so I don't have to push brower things onto my mental stack, which will slow me down when I want to switch back to the IDE.

I'm very good at remembering where things are, I can pick up a book I haven't touched in months and remember the page I was on, or the last sentence I read to find my place with a few seconds. On the other hand, large scale sorting and rearranging tasks are miserable drudgery so I have a lot of stacks and my bookshelves are, ah, suboptimal.

eyelidlessness · 5 years ago
Speaking as someone who often communicates before considering whether the people I'm speaking to share my background knowledge... this might be a more effective message if you ask "have you tried ____?"
betageek · 5 years ago
This looks really great, something I could use and would pay for when polished but there's definitely a few issues for me at the moment:

* Why go fullscreen and modal? I want to drag in links from docs, email, other browsers, have it side by side while reading PDFs etc. etc. this stops me from doing any of that

* Please let me change the shortcut! I already have Option-Space bound.

* Let me put the browser window anywhere I want when it's in the single page non-fullscreen mode, don't levitate it to where you think I want it

* Unless I'm missing something the process of opening a page then adding it to a workspace seems to be three clicks - open page, hit + (plus) button, select workspace, select workspace/inbox - need to make this one click, maybe just show the inboxes? This also seems clunky, I'd much rather browse, drag that page to the workspace/inbox, continue browsing and adding further pages, then arrange all the pages in the workspace after i've added all the links. Seems a faster workflow.

n3k5 · 5 years ago
I agree with everything, except that this is something that can be polished into sth. usable. After trying Bonsai, I think it's a promising proof of concept that demonstrates what should now be implemented properly. A ‘quick’ hack on top of Electron is just really slow and clunky compared to a ‘real’ browser.

I know this is asking a lot, but as an end user with an unlimited budget for big dreams, I'd like to see something like this as a fork of Firefox that eventually gets enough of its changes upstreamed so it can become just an extension for the browser I'm already running anyway.

Anyway, a little addendum:

> Why go fullscreen and modal?

And for when I want it full-screen and modal, at least do it right, please. E.g. it shows up in the cmd-tab task switcher, but that can't actually be used to switch to Bonsai, nor away from it (!!). And, again, it's too slow. (What's with the dramatic fade-out animation?)

Btw., you can drag a link on top of it (at least when option-space doesn't do something else already ;) and the cursor changes to identify a valid drop target, but when you drop, nothing happens.

tailspin2019 · 5 years ago
This looks great.

I was sceptical from the article title, but was immediately sold on the idea when I saw it in action.

A good sign to me is that you have solved problems I didn’t realise I had. I like the floating window concept - can definitely see how that would be useful for having documentation front and centre while working on something. The spatial organisation thing is very nice too.

Looks like it’s early days still for the project but I think you’re onto something. Good luck with it!

leobg · 5 years ago
Downloaded it, installed it, and loving it!

The big thing I'm missing most is LastPass. Without access to my passwords, I can see myself falling back to Chrome. In fact, I need to keep Chrome running so I can look up my login names and passwords there in order to copy them over to Bonsai when I'm being asked to log in. If you could support popular password managers inside your browser, that would help a lot!

greenie_beans · 5 years ago
yeah, good suggestion. i'm trying to use a password manager on my first try. can't figure out how to without leaving the app.

Dead Comment

itwy · 5 years ago
You should drop any software that prevents you from changing another unrelated software. In other words, move from LastPass to Bitwarden.
dubcanada · 5 years ago
OP is saying browser extensions don't work. Not that LastPass doesn't work with the browser.
jedberg · 5 years ago
Having your password manager tied to your browser is more secure because the saved password doesn't show up unless you're in the correct domain, preventing phishing attacks.
infogulch · 5 years ago
Love the opened-from tracking for tabs and spatial organization, which reminds me of the Promnesia extension [0] that helps you track when you've been to a page in the past and where you came from.

I think there's a huge untapped potential value for users in historical browsing activity that is just wasted by browsers today (well when they're not busy siphoning it off to advertisers). The standard browser history data and ui is so crap at mapping to your intuition about how to find some tab you had open recently that it's basically useless. It was modeled when the primary navigation in a browser was one window with no tabs and you clicked from site to site literally linearly, and this design has never been updated since. Now I have 2-4 windows, with dozens of tabs each, on 4 computing devices, where windows have been open for times ranging from 2 minutes to 2 months, where on each each tab I may switch to it or move it or close it or open new tabs from it at any time. And all that activity is reduced to a single linear 'history' where the order in which items appear is nonsensical no matter what sort order you use. Real browsing activity is no longer linear, modeling it as linear is hostile to the user.

Knowing that you've seen something before but you can't figure out when or how you got there because it's pointless to trawl through thousands of completely unrelated links in history is despair.

[0]: https://github.com/karlicoss/promnesia

eurasiantiger · 5 years ago
What I really want is a browser that displays information in a clear, unified format that I can customize to my liking.

I want this browser to disregard all visual HTML and CSS rendering, and rather instrument a headless browser to gather the navigation and content from sites.

I want to be able to easily make my own instrumentation for sites that do not yet work on this browser.

I’m want to allow some branding in the form of one theme color, used for one top navigation bar background, and a site logo there. That’s it. Nothing else. But maybe make this easily customizable with the rest of the interface.

In effect, a ”reader mode” but for the entire browsing experience, not just the main content.

allknowingfrog · 5 years ago
It doesn't address your specific desire (uniform rendering of existing HTML), but the Gemini protocol seems to align with your desire for a simpler internet. It's worth a look if you aren't already familiar. https://gemini.circumlunar.space/
anigbrowl · 5 years ago
I like the idea of Gemini but the reality is 'here's a list of random servers which could be anything but at least our user interface is from the 1980s'. I like how it's lighter than the web, but I don't see how it's 'heavier than Gopher' as suggested (and I have been watching the Gemini project for a few months now).

I was on the internet well before the web and I used Gopher all the time. It was great by the standards of the time (ie 1200 baud modems so a page of text like this HN discussion would easily take a minute or more to load and would probably do so with many errors). Gopher was (somewhat) integrated with two other services known as Archie and Veronica for content discovery. It was primitive, but relatively easy to navigate if you knew what you were looking for.

What we have here is a bunch of Gemini servers but no concept of user service. Are they blogs? aggregators? malware endpoints? interactive fiction/text adventures? I don't know, and that's not part of the fun. It's as if Gemini has fetishized the least good aspects of the BBS/Gopher/pre-web experience - lack of UI consistency and non-discoverability - in the hope of getting something better by forcing everyone to start over.

Nobody* has time for that. Harder doesn't automatically equal better. Gemini would be vastly improved if it presented with some color/minimal formatting (like syntax highlighting controlled at the user end or with typography for the color-blind)and seeded some useful information like mirroring Wikipedia or something that people are already familiar with. There are some Wikipedia proxies (gemini://medusae.space/index.gmi?25) but the only working one I know of is not listed (gemini://vault.transjovian.org).

This is Not Great.

* hyperbole is always an option

To change the world, there needs to be some critical mass of people using it, and to get people using it there needs to be some demonstration of what it's capable of. I want to love it. I have clients (plural) installed. But honestly, I don't want to invest the time figuring out how to make the server do interesting stuff, if I can't find anything very interesting to do with the client. Absent any effort to make it functional for one external thing, it's doomed to remain a toy, or an 'esoteric protocol' that everyone pays lip service to but nobody actually uses.

Here's a suggestion: get a gemini HN proxy running. It ought to be super easy given how minimal HN is, and would give people and excuse to have a Gemini browser running all the time.

hyferg · 5 years ago
Here's a cook UX project [0] that shows a potential UI-free operating system like you described.

[0] https://uxdesign.cc/introducing-mercury-os-f4de45a04289

zzo38computer · 5 years ago
I also wanted some things similar to like that (although without any site branding either). Some web pages don't work properly with CSS disabled. There is ARIA, although it isn't perfect either (and as far as I could tell when I checked, formatting such as bold, fixpitch, etc doesn't seem to work properly with ARIA; this is determined by writing a short HTML file and then viewing the accessible tree (I don't know if I made any kind of mistake)). So, rather I think the way to do is to use a combination of the HTML, CSS, and ARIA to produce a kind of "augmented HTML" which can then be displayed. (If it contains only simple HTML without layout or CSS or whatever, then the same HTML could usually be used.) (ARIA can be used to e.g. find out what is a checkbox etc, so that the renderer can render that element as a checkbox and ignore any CSS and HTML and other stuff that it tries to use to make it fancy.)

Supporting the Gemini protocol and text/gemini file format is also good to have, but that is separate.

Stuff such as a table of contents window can also be implemented (by looking for the relevant HTML commands in the document which denote headings, sections, etc). (I think I have seen one web browser that can do such a thing for Gemini and Markdown but not HTML. However, it would be possible to do with HTML too (although a bit more complicated).)

You could also add such thing as local annotations, form data save/recall, etc. (These would be controllable only by the local user. There would be no HTML or JavaScript commands for documents to control them.)

I mean that, to make a better web browser: remove half of the stuff, implement the other half of the stuff differently, and then add some stuff.

btown · 5 years ago
I've thought often that one could write robust automation engines that boil any SaaS app down into a few functions:

search(terms?: string) -> Promise<Item[]>

expandItem(itemId: string) -> Promise<Item[]> # gets more details for the given item (e.g. a thread) and any child items (e.g. messages within the thread)

...

One could build this for Gmail using https://inboxsdk.github.io/ , and other apps ranging from Slack to Google Calendar to Dropbox to your issue tracker du jour with screen scraping, treating each message or ticket or document as an item. Not an easy task as you'd be fighting against the current of rapidly-iterating frontend teams changing class names and structures as they see fit, but doable. The possibilities of how to collate and visualize this data would be endless!

lelanthran · 5 years ago
If you add in `list(grouplist?: string[])` you'll get 99% of the functionality that most controllers in MVC need.
mirrorlake · 5 years ago
I've been dying for a browser mode that works more like Sublime's Distraction Free Mode (Shift+F11). The main thing I want is the browser to remain full screen, but render webpages as if the browser is about half-width. Blank columns on either side.

So many webpages with text are better if you view them at about half-width, and I often end up being forced to leave full screen and manually set the browser width to do this anyway. If anyone knows of an addon or script that accomplishes this, I'm curious to know about it.

CRConrad · 5 years ago
Option A: Use Firefox or Edge, press F9.

Option B, for when F9 doesn't work: Narrow down your browser to a strip of desired width down the centre of the screen, keep a maximized blank window -- text editor with a new empty file, or something -- behind it.

HTH!

tammer · 5 years ago
The resurgence of the email newsletter in recent times is a sign that, regardless of advances in web and web-connected applications, on a broad timescale open connectivity protocols ultimately hold lasting appeal.

Open protocols and techniques that enable effortless parsing of information serve a growing need for users of the web today. While I’m not sure if it will be gopher or something new, I foresee significant disruption potential for whatever effectively fills this need at scale.

forgotmypw17 · 5 years ago
Opera Browser had this feature for a long time.

User styles vs site styles. Either or both could be on or off.

antics9 · 5 years ago
Mothra in Plan9 or the gemini protocol as suggested.
diskzero · 5 years ago
This is interesting and fun to use. I am not sure it would become part of my daily work flow because it is another browser and I am fairly attached to my current browser workflow.

Is it out of the question for a lot of these feature to exist as a plugin to an existing browser? Bonsai could then be integrated to use my search engines prefs, my ad blockers, etc.

Keep up the good work! It is great to see people pushing UI concepts.