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