[HN Gopher] Omnom: Self-hosted bookmarking with searchable, wysi...
___________________________________________________________________
Omnom: Self-hosted bookmarking with searchable, wysiwyg snapshots
[showcase]
Author : mstef
Score : 135 points
Date : 2025-04-14 11:42 UTC (11 hours ago)
(HTM) web link (omnom.zone)
(TXT) w3m dump (omnom.zone)
| mstef wrote:
| a bit of background. this is a rewrite of omnom by asciimoo - the
| guy who also made searx. originally i wrote omnom, back in the
| days when del.icio.us was enshittified and gone down the drain.
| instead of complaining i was taking the opportunity to write a
| replacement that i would want, it became omnom, and for many
| years me and a bunch of users were very happy with it.
|
| but the fast moving world of browser extensions made maintenance
| (for a non-commercial free software side project) too expensive,
| so the extension support became erratic, until it died
| completely. for a year or two i didn't use it.
|
| but then asked asciimo if he could have a look a the extensions
| (since he was recently working on another extension, so had some
| experience), he looked at it, and rewrote the whole thing in go
| and fixed the extension. he even got support from nlnet/ngi0.
|
| if you want to have your own self-hosted libre software
| bookmarking service for you and your community, give it a go,
| it's very simple, privacy respecting and most robust when it
| comes to snapshotting. asciimoo did a great job.
| mstef wrote:
| btw if you want to have a look at more than a decade of
| snapshots, try https://links.ctrlc.hu/ my private and
| membership invitation-only instance.
| marcod wrote:
| > if you want to have your own self-hosted libre software
| bookmarking service for you and your community, give it a go
|
| I haven't worked with go - where could I host that myself?
|
| Could I do this with the free tier of
| https://cloud.google.com/run/docs/quickstarts/build-and-depl...
| submeta wrote:
| I created something like that for my spouse and myself. An app
| that creates an archive.ph url, extracts full text and generates
| summaries via an llm. I'd open source it, but as I also extract
| paid articles via archive.ph, I think it wouldn't be ethical to
| publish it.
| mstef wrote:
| the difference is, that archive.ph snapshots something in
| headless. omnom snapshots the exact same state that your
| browser is displaying you. so if there is js interactions that
| change the dom, those will be snapshotted, unlike with
| archive.ph.
|
| also lets not forget that archive.ph wraps everything in their
| own frame and has their own way of mangling the result. not in
| a bad way, it's just not the original as it would have been
| rendered in your browser.
| viraptor wrote:
| Archive.ph is often used, because the "js interactions that
| change the dom" is typically a paywall. And you won't want
| it.
| mstef wrote:
| omnom is for snapshotting, not for circumventing paywalls.
| i'm merely comparing the snapshot feature of the two
| projects. circumventing paywalls is out of scope.
|
| your bookmarks will never linkrot away.
| mstef wrote:
| btw it is perfectly fine to circumvent a paywall with
| archive.ph and then to snapshot it with omnon so your
| bookmark never linkrots away. also when i say "js
| manipulation" i also mean stuff like captchas, or dynamic
| documents that you change by interacting with it, or even
| private services like e.g. rocket chat hidden behind some
| barrier like http auth, or private vpn. archive.ph will
| never have access to what your browser might have access
| to.
| mazsa wrote:
| I know OP personally and have a high regard for him. His blog at
| https://www.ctrlc.hu/~stef/blog/ is also worth following.
| pratio wrote:
| I have settled on https://readeck.org/ it's absolutely brilliant.
| It supports postgres and a service with systemd. omnom looks
| promising, will keep an eye on it.
| osipov wrote:
| the only factor that's stopping me from moving to readeck is a
| lack of import functionality for evernote bookmarks. otherwise,
| i'd be 100% on readeck.
| mstef wrote:
| looks nifty, but does it do snapshotting?
| braggerxyz wrote:
| Yes it does. Also written in Go and pretty hackable.
| pratio wrote:
| It also does highlighting which is absolutely amazing. No
| need to save an entire page just for a piece of text. Also,
| you can have opds for ebooks.
| smeej wrote:
| My dream tool allows me to create snapshots from either mobile
| or desktop browser, then read and highlight on my Android eInk
| reader or phone, then export my highlights and notes into
| Logseq...all without collecting all my data and selling it to
| advertisers (which basically leaves me with FOSS tools).
|
| Omnivore was as close as I've ever gotten to this dream, even
| though their Android app wasn't great and certainly didn't have
| an "eInk pagination" option, but Readeck is at least giving me
| _some_ hope again once Omni sold out.
| YalebB wrote:
| I encourage you to check out my app ;)
|
| Demo for Showcase: https://www.youtube.com/watch?v=ehGolVAHm8U
|
| App Store link: https://apps.apple.com/gb/app/showcase-
| co/id6740991352?platf...
| dewey wrote:
| I wish ArchiveBox had such a feature where you can archive
| "private" and logged in pages. I often had the case where I then
| realized I only archived some login page.
| 5evOX5hTZ9mYa9E wrote:
| I use Linkding for my bookmarking. It has the ability to
| snapshot the links by using SingleFile, which is super handy
| cause it produces a single .html file that you can send or save
| separately if you want.
|
| To save logged in content, you can either pass it cookies.txt
| with the login cookies it needs, and it works pretty well.
| Alternatively, you can also use the SingleFile extension to
| snapshot what you want and upload it in place of the automated
| snapshot. This is also handy because the extension allows you
| to remove private data prior to screenshot, such as your name
| or username.
|
| I personally have cookies in place for most common social media
| sites that need login (twitter, reddit), and if I need to
| snapshot something else occasionally, I do it manually and
| upload it to Linkding.
|
| https://linkding.link/
|
| https://linkding.link/archiving/
|
| https://www.getsinglefile.com/
| dewey wrote:
| ArchiveBox also supports SingleFile from what I remember, but
| I wish there was a extension to just pass everything (Browser
| context) to ArchiveBox. Having to keep cookies in sync with a
| second service is a bit of a hassle.
| 5evOX5hTZ9mYa9E wrote:
| If you read the Linkding archiving page, you can see that
| it is possible to set up SingleFile extension to auto-
| snapshot the page when the page is added, from the browser
| you're using at that moment. The advantage is that loing is
| handled implicitly, but a disadvantage is that this only
| works in the browser, and not for example when you use the
| Android app. But for me that's fine,
|
| Also, it is possible to configure SingleFile extension to
| automatically push a snapshot to a REST Form API. You can
| even make it do so when you bookmarks something in your
| browser, to achive a flow where bookmarking something in
| the browser saves the page via SingleFile extension and
| gives it to ArchiveFile.
|
| https://docs.archivebox.io/dev/Contents.html#api-reference
|
| Also, look in the SingleFile extension options, under
| Destination.
| dewey wrote:
| That sounds like that does the job, thanks! I'll try to
| set this up.
| kapnobatairza wrote:
| You can pass cookies or Chrome user data into ArchiveBox, but
| you do risk account suspensions if your account gets flagged
| for scraping.
| amit9gupta wrote:
| After trying many bookmarking solutions, settled on Goodlinks.
|
| Pros: - stores data in your icloud - stores a copy where possible
| - full-text search
|
| Cons: - not open-source - works on mac/ios only
|
| https://goodlinks.app/
| MrJohz wrote:
| I've wanted something like this for a while, although I've not
| looked into it much.
|
| That said, the snapshot search either isn't working, or isn't
| doing what I'd expect it to do. If I search for `fsf`, the
| snapshot search finds the FSF's website. But if I search for text
| that appears in the snapshot of the homepage (e.g. "sysop" or
| "sysops"), then I get no results.
|
| I would expect the snapshot search to work roughly like Google,
| but for these limited snapshots of pages, but it appears to only
| search the URLs, maybe the page titles?
| asciimoo wrote:
| You can find detailed search (including title/content) using
| the bookmarks endpoint. Snapshot search is currently only for
| finding multiple snapshots for a single URL/domain. Probably it
| should be emphasized, or content based search should be
| available there as well. Thanks for the feedback!
| vandyswa wrote:
| I have a static web page with a table of A href's. Source
| controlled under git. Problem solved.
| mstef wrote:
| sure, for bookmarking that's fine. but it does not help against
| linkrot, or censorship, or pages changing with time.
| quantadev wrote:
| I agree. Saving web-links is a solved problem. Saving the
| CONTENT afaik is _not_ solved and I 've wanted a solution for
| YEARS, as well as the rest of humanity has needed this
| (including those who don't even _know_ they need it, haha!).
|
| Closest thing would be to "print" to PDF but that always
| creates a trainwreck in the PDF and is never good enough for
| me. Looking forward to trying Omnom if it's open source.
| asciimoo wrote:
| It's not only open source, it is free software. Take a look
| at https://github.com/asciimoo/omnom -
| suggestions/contributions are appreciated =)
| quantadev wrote:
| That looks like a pretty heavy-weight solution, with a
| lot of complexity, and I don't mean that as a criticism
| at all. I'm not a 'go' developer myself. I've always
| wanted a pure JS solution (as a browser extension,
| maximum of 200 lines of code) that can capture the
| content of a web page (doing a virtual scroll to the
| bottom, to capture the whole page). Since there's no
| perfect way to translate HTML to PDF, my idea had always
| been to capture the IMAGE of the page (aside from
| capturing keywords for DB indexing which can be done
| separately just for 'search' support later on).
|
| The fly in the ointment is of course the scrolling too,
| because some apps have "infinite" scrolling, and so in
| many SPAs there's literally no such thing as "The whole
| page". Anway, I haven't tried your app yet, because of
| not-JS and not-Small, reasons, but I'm just sharing my
| perspective on this topic. Thanks for sharing your
| project!
| andersha wrote:
| I am happy user of https://historio.us/
| spookybones wrote:
| Does this kind of service really need a subscription? Immediate
| turn off.
| mbreese wrote:
| I've been using Karakeep (formerly Hoarder) for a few months. So
| far, I like it. I particularly like having an iOS app so sharing
| new bookmarks from different apps is really easy. Instead of
| pulling from the browser, it retrieves its own copy with a
| headless Chrome, so if you need a login, the snapshot breaks.
| But, overall, I've been pretty happy.
|
| But, I'll definitely check out Omnom too!
|
| https://karakeep.app/
| apitman wrote:
| Since it requires a browser extension anyway, is it possible to
| build something like this local-first and lean on Chrome/Firefox
| built-in syncing?
| jonotime wrote:
| +1 for local-first. there needs to be a local first
| bookmark/snapshot manager. where you can own your data without
| requiring hosting or installing things.
| bosse wrote:
| I've been using Wallabag for articles I want to deal with later,
| with the Frigoligo app on iOS for offline reading. For bookmarks,
| I've been using the Floccus extension with the Nextcloud
| Bookmarks app.
|
| I'm missing the social aspect of bookmarks on del.icio.us though,
| so I'll check out Omnom and the other mentions in this thread of
| what people are using.
| vindex10 wrote:
| I have a thought on "sharing" the snapshots. Many pages nowadays
| are behind a paywall.
|
| Typically you are required to log in (pay or not) to remove them.
| I'm aware of archive.org and others, but it is not the main point
| :)
|
| The point is, that if you are logged in, some private information
| about yourself may be stored in the snapshot. It is less
| dangerous when it is something on the screen -> you can make a
| decision. But if is is some hidden field with your ip address for
| example.
| renegat0x0 wrote:
| I love bookmarks. I have made RSS app with bookmarking mechanism.
|
| My links about bookmarks and links below.
|
| https://github.com/rumca-js/Django-link-archive - django app, RSS
| client, simple web crawler, under construction
|
| https://github.com/rumca-js/RSS-Link-Database - my bookmarks
| repository
|
| https://github.com/rumca-js/RSS-Link-Database-2025 - RSS links
| for year 2025
|
| https://github.com/rumca-js/RSS-Link-Database-2024 - RSS links
| for year 2024
|
| https://github.com/rumca-js/RSS-Link-Database-2023 - RSS links
| for year 2023
|
| https://github.com/rumca-js/Internet-Places-Database - I also
| maintain a list of domains found in the Internet
|
| https://rumca-js.github.io/search - search that uses links
| maintained in zip files
|
| https://rumca-js.github.io/music - my music library, browsable
|
| https://rumca-js.github.io/bookmarks - my bookmarks, browsable
| cookiengineer wrote:
| Damn this is internet gold. Gonna be lost in those repos for
| days, man.
|
| Awesome work!
| crossroadsguy wrote:
| After quite some exploring around and struggles I made my peace
| with https://raindrop.io. Am I happy with that? Of course not.
| But that's the only hosted one which has extensions and apps for
| almost every browser and OS I use. I wish there a functional open
| source service (hosted) with wide range of platforms support that
| I could pay for and use.
| Onawa wrote:
| I agree, I made my peace with Raindrop.io as well. Being able
| to use it on any system and most any browser, plus a full API
| for interacting with my bookmarks. Nothing free and open source
| compared and now I have 6k+ bookmarks in Raindrop that I would
| like to move elsewhere, but I'll have to check out the project
| linked here.
| YalebB wrote:
| I made an app for this actually, called Showcase. You can
| bookmark any content----Youtube videos, websites, Tweets,
| Instagram posts---- and store it all together. You can use it
| on browser where you can paste directly onto the canvas (+
| chrome extension coming) or iOS that has a Share Extension too.
|
| It's also free ;)
|
| Demo for Showcase: https://www.youtube.com/watch?v=ehGolVAHm8U
|
| App Store link: https://apps.apple.com/gb/app/showcase-
| co/id6740991352?platf...
| theeasyway wrote:
| Oh wow this is super nice I'll definitely be using this
| plasticsoprano wrote:
| I've been using linkwarden the last few months and loving it.
|
| https://github.com/linkwarden/linkwarden
___________________________________________________________________
(page generated 2025-04-14 23:01 UTC)