Show HN: Eesel – Federated search without API integrations (eesel.app)
We're trying to solve a pretty universal problem. Everyone's work is spread across apps - there's a project brief in Google Docs, issues in Jira, a mockup in Figma, PRs in GitHub - and with this kind of sprawl, it can be a game of trial and error to find the links we need to do our job. Trying keywords in the address bar only works if we remember the title and it's specific enough, search in apps can be slow and noisy, company "knowledge hubs" in Confluence or Google Drive are usually not up to date, and we ultimately just ping each other on Slack to find things.
I was struggling with this acutely as a PM at Intercom, and it felt ridiculous that I could search the web faster than my company's docs.
It was around this time that I also discovered an Effective Altruism blog post on Operations (https://80000hours.org/articles/operations-management/) and how "maximising the productivity of others in the organisation" can have this multiplier effect for your own impact.
That's when it clicked - here's an "operations" problem that felt tractable for my skills and I could potentially multiply my impact by solving it. This is what gave the conviction to prototype something on the weekends, and things spun off from there.
Let's talk about the solution more. The magical thing about eesel is that we don't use APIs.
When it comes to "search across apps", integrating with different APIs is a pretty default way to approach things. That's how we started, but things felt uneasy - could we really build API integrations with _everything_? There's so much out there, and this list is pretty much always changing.
If we really did want a search across all work apps, we'd have to play catch up with old and new APIs. You could argue that these were just the schleps (http://www.paulgraham.com/schlep.html) we had to overcome, but it was amidst this we realised that uh, the browser exists.
We mostly work in the browser, and the great thing about it is that it's built on web standards. From HTTP and URLs to HTML and CSS, all apps in the browser follow the same predictable patterns: documents are accessed via URLs, content lives inside the HTML, there's a page title, there's a favicon, and so on.
It's not a perfect replacement for APIs, but it felt good enough. We didn't need to manually integrate with each app, and could instead rely on existing web standards. And that's what we did. eesel works with any app in the browser, including apps without APIs (like that internal company tool), or apps that don't exist yet (the new Product Hunt hit).
Not using APIs also meant that we could go an extra step with privacy - eesel works fully locally by default and you don't need to login to _anything_ (even eesel!). Simply install and it works.
We want to keep building on this approach and improve how we work in the browser. For instance, eesel uses keywords to automatically organise pages into Folders, and there's Commands to take actions (spoiler: you can customise a JavaScript to inject on a page, like this script that goes to a Notion backlog and clicks the "New" button - https://eesel.notion.site/Notion-New-page-f10c7398209544088a...).
Alright, that's a lot of writing from us. We have a bunch of ideas, and would love to hear about wher...
28 comments
[ 2.0 ms ] story [ 90.0 ms ] threadI prefer my private browsing not be remembered by any apps, it generally wouldn't be useful.
Privacy - https://www.eesel.app/privacy Terms - https://www.eesel.app/terms
The onboarding looks so smooth because you pull so much context from browser history. Impressively simple.
My technical question is how you get the feed to work (or maybe I'm misunderstanding what it is) if you're not receiving updates from an app. When someone else makes an update to a google doc, how does eesel know and push a feed update?
[0]: https://www.youtube.com/watch?v=WLWCTjkmxgM&feature=youtu.be
edit: FWIW I'd def install this but I mainly work in safari
The feed works by pushing new pages you or your teammates make and share. For instance, if you make a new Notion page and add it to a Folder, it'll get pushed to other teammates who are members of the Folder. There's no automatic way to notify teammates of an update for now, but we're working on something related to do that right now.
When a document is shared with you in eesel (say, your teammate adds it to a team folder), even if you haven't seen the document before, it'll appear in your eesel. It's a way to discover what teammates are up to.
The idea is that everyone can automatically push their work into shared folders, and build a team 'source of truth', without the overhead of maintaining things.
Does that makes sense?
Everything runs fully locally by default, but to enable features like sharing pages with teammates, we need to have servers. The content of your pages is still only stored locally on your browser, no exceptions. We run through the details in our privacy policy - https://www.eesel.app/privacy
Fun fact - we did consider being totally serverless and having some distributed, peer-to-peer database, but there were too many unknowns to go down that path. Maybe one day!
Would be really interesting to see how you can make eesel's search available in third-party apps. E.g. in Slack to quickly share a particular URL without having to leave the app.
Love that idea, it's something we've been floating around ourselves. We're not sure if the problems around that are painful enough for people to change existing habits (is it annoying enough for you to switch apps?), but let us know if you have any thoughts on that!
Foreign founders can make a Delaware C Corp. We used Stripe Atlas for that and it did the job well! From there, it's the same process.
hoping for more keyboard shortcuts xD
Must have before I'm comfortable sharing with team - Could not figure out how to edit the rules for a folder once created, had to delete the folder and recreate to get to rules - Did not like that eesel took over my start page, I had a different start page and if i tried to keep my old start page it disabled the extension - This will likely be a blocker - I'd like to see much more granular control over what is being seen/indexed/shared from my history and since I use more than one profile to keep things separate, I'd like to see a way to separate personal profiles from team/workspaces
Nice to have (eesel-for-developers): plugins: I'd like a way to customize the pages/rules etc - maybe add custom javascript etc. cli: that allows me to programmatically create a folder with url's - inspect folders, move between folders etc. vscode-extension: to create ephemeral light-weight folders that bring source code files (github/bitbucket urls), jira ticket urls, documentation urls all together in one folder
Great start!
1. To edit the rules for a Folder, open the Folder and head to "Add pages" > "Automatically". We've heard it a few times that discoverability of this isn't great, and it's definitely something we should improve.
2. You can use eesel without having it in your new tab. Here's a help article on that - https://intercom.help/eesel/en/articles/3728989-how-to-remov...
3. To clarify, everything is local by default and only pages you explicitly share by adding to a Workspace, a shared Folder and so on are shared.
4. I imagine we'll want to support eesel profiles at some point to better separate personal and work things, but one workaround till then is to have different Chrome profiles and install eesel on both.
Let us know if you have any other thoughts that pop up!
that would be incredibly helpful. that's how i work with email too. being able to group all my history into folders would allow me to reduce the number of tabs that i keep open now just so i can find them easier.
eesel works with anything in the browser and the intent is to be generic. You can add any app like so - https://intercom.help/eesel/en/articles/3936045-how-to-add-a...
Does that makes sense? Also out of curiosity, what apps do you use?
manually adding apps/sites is to much work since i want to add everything.
when debugging an issue i have related sites all over the place, that i want to group somehow. same when doing research for a new project, or simply when dealing with multiple customers. i use firefox where i can manually group tabs into containers. that helps, but it doesn't cover history, so if i close a tab, the page is no longer associated with the project. for bookmarks, i have to remember to bookmark each page, but then i can't tell which ones are more important or more recent. it would be nice to if grouping could be more automatic based on heuristics like keywords found in the page and also tab history.