[HN Gopher] Wander - A tiny, decentralised tool to explore the s...
       ___________________________________________________________________
        
       Wander - A tiny, decentralised tool to explore the small web
        
       Author : susam
       Score  : 159 points
       Date   : 2026-03-18 07:43 UTC (15 hours ago)
        
 (HTM) web link (susam.net)
 (TXT) w3m dump (susam.net)
        
       | susam wrote:
       | Hello HN!
       | 
       | This tool is inspired by Kagi Small Web (recent thread:
       | https://news.ycombinator.com/item?id=47410542). A common concern
       | raised here is that Kagi Small Web currently accepts only blogs,
       | comics and YouTube channels. It does not accept arbitrary small
       | websites. That limitation motivated me to build Wander.
       | 
       | Wander is fully decentralised. Anyone can host it on their own
       | website. It consists of just two files: an `index.html` for the
       | Wander console and a `wander.js` where you link to other Wander
       | consoles. It is a bit like a webring, but more flexible. Each
       | console can link to any number of sites and other consoles.
       | 
       | There is no server-side code, no database, nothing to install. If
       | you have a website, you can set it up by uploading just two
       | files. In fact, you can host it on GitHub Pages or Codeberg Pages
       | too.
       | 
       | If you like the idea, please join the network. I would love to
       | see it grow.
       | 
       | More details about how it works and how to set it up here:
       | https://codeberg.org/susam/wander#readme
        
         | hamdingers wrote:
         | This is so delightful! I'll be deploying this and sharing a
         | link on the issue.
         | 
         | One issue I see: If I get you to include a link to my console
         | but I don't link to any others, I can trap wanderers within my
         | recommendations until they refresh.
         | 
         | If that's not desirable, it could be avoided by having the
         | client keep a running list of all the consoles it has
         | discovered this session and choosing from that list at random.
        
           | susam wrote:
           | Glad you like it. Yes, you are right. This is something I
           | realised too initially as a natural consequence of being the
           | only participant in the console network at the beginning.
           | Keeping a list of discovered consoles is exactly what I was
           | thinking too. I built this tool rather quickly as a proof-of-
           | concept while taking a break from another activity, so I
           | couldn't quite find the time to implement this solution. But
           | I might implement it in the next update. Thank you for taking
           | a close look at this project!
        
       | bovermyer wrote:
       | Oh, that's neat. I think to really understand it though I'll have
       | to explore it and experiment with hosting my own Console.
        
       | pbronez wrote:
       | Cool idea - it's like a recommended set of links, but integrated
       | into an interface like stumble upon or Kagi's small web browser
        
       | deanebarker wrote:
       | Love this, but I need it to allow me to break the frame. I found
       | some neat sites, but I need a button to open them in a new tab,
       | frame-free, if I want to.
        
         | mzajc wrote:
         | Firefox has a neat feature for this; if you right click an
         | iframe, it'll have a "This Frame" menu with options including
         | "Open Frame in New Tab".
        
         | susam wrote:
         | Thank you for taking a look at this project. I'm glad you liked
         | it.
         | 
         | You make a fair point. I put this together in about 1.5 hours
         | in the early hours of the morning while taking a break from
         | other academic work, so it is not as polished as it could be.
         | Adding an 'Open' button to launch a link in a new tab sounds
         | like a useful feature. I will consider this for the next
         | update. Thank you for the feedback!
        
       | moebrowne wrote:
       | It includes only 17 URLs: https://susam.net/wander/wander.js
        
         | susam wrote:
         | 17 + 11 URLs from https://dahlstrand.net/wander/wander.js + 26
         | URLs from https://www.siddharthagolu.com/wander/wander.js that
         | I link to from the above link. So 54 URLs so far.
         | 
         | The number of URLs grow as more people add this tool to their
         | website and add each other as neighbours. The tool is capable
         | of discovering neighbouring consoles and showing URLs from
         | there.
        
           | Balinares wrote:
           | Did we just reinvent webrings 25 years later? :)
           | 
           | (Not a diss. Webrings were cool.)
        
       | warkdarrior wrote:
       | This will get really fun when influencers get a hold of the idea
       | and start connecting themselves into the Wander community.
        
       | weedhopper wrote:
       | Awesome it's hosted on codeberg too
        
       | Babkock wrote:
       | Looks cool. Good job!
        
       | surgical_fire wrote:
       | This is actually pretty cool. Once I have my own personal
       | webpage, I may even add this tool to it.
       | 
       | It is a project I keep postponing lol
        
       | dgb23 wrote:
       | I want to like it, but I don't fully understand why one wouldn't
       | just put a bunch of links on a /wander page and maybe randomize
       | the order?
        
         | dreko wrote:
         | Because the discovery is transitive. When you wander, it
         | fetches another console's wander.js and picks from their pages,
         | so you're not just exploring one person's list, you're hopping
         | across a graph of curated lists. A static link page can't
         | necessarily do that.
        
         | susam wrote:
         | What you are describing sounds a bit like a blogroll, which
         | many of us do indeed maintain. Mine is here, by the way:
         | https://susam.net/roll.html
         | 
         | However, Wander is meant to be a bit like StumbleUpon, but
         | without requiring a centralised service that everyone must go
         | through. One limitation of a blogroll is that it does not
         | provide a consistent way to discover recommendations
         | recursively. For example, I might visit your website A, which
         | recommends website B. I might then visit B, but B may not have
         | any recommendations at all.
         | 
         | Every Wander instance, on the other hand, has a defined list of
         | recommendations. It also links to the /wander pages of its
         | neighbouring sites. If you visit the /wander page of website A,
         | the tool can discover its neighbours (B, C, etc.), then the
         | neighbours of those neighbours and so on. It can fetch
         | recommended links from them and present the links within the
         | same console.
         | 
         | Additionally, the tool provides a way to leave the current
         | console and move to a neighbour's console if the visitor wants
         | to continue browsing from there.
        
       | desireco42 wrote:
       | Ahhh... this is like my OneRandomSite.com from... 2006 or so...
       | nice.
       | 
       | I think we need things like this. To be reintroduced over and
       | over.
        
       | punknight wrote:
       | I love this as a concept. The wander button is great, but it
       | still needs some curating to decide what pages you like, and
       | getting to the actual content. I guess I'd like to know the
       | workflow moving forward? Just re-download the repo every couple
       | weeks, and diff to see what new sites are on the list?
        
         | susam wrote:
         | Thank you for taking a look at this project. I'm glad you like
         | the concept. I am not sure I have understood your question
         | accurately, but let me attempt a response anyway. If I get it
         | wrong, please feel free to correct me or ask me again.
         | 
         | There is no need to re-download
         | https://codeberg.org/susam/wander every few weeks. The setup is
         | a one-time activity. From that repository, you copy exactly two
         | files (index.html and wander.js) and place them on your web
         | server, preferably within a /wander/ directory. After that, you
         | only maintain the wander.js file.
         | 
         | You curate your own links and choose which other Wander
         | consoles to link to as neighbours. The contents of wander.js
         | are entirely yours to define. There is no need to diff or
         | compare it with the version in the repository.
         | 
         | In fact, if you do not care about updating or curating links
         | often, you can leave both files untouched indefinitely. The
         | only downside is that some links may eventually succumb to link
         | rot, which could affect the wandering experience. So it may
         | help to review your links occasionally and remove dead ones,
         | but beyond that no ongoing maintenance is required.
        
           | punknight wrote:
           | I get that, but right now, if you traverse each "console",
           | you end up with a list of 28 trusted "small web" links. The
           | project grows in value if that list gets bigger over time
           | either by you personally adding nodes or the community adding
           | nodes. I don't really have a way of knowing if you are
           | intending to add more links to your console (thus growing the
           | project) or this is a one and done type of system.
        
             | susam wrote:
             | > I get that, but right now, if you traverse each
             | "console", you end up with a list of 28 trusted "small web"
             | links. The project grows in value if that list gets bigger
             | over time either by you personally adding nodes or the
             | community adding nodes.
             | 
             | Yes, all of this makes sense.
             | 
             | > I don't really have a way of knowing if you are intending
             | to add more links to your console (thus growing the
             | project) or this is a one and done type of system.
             | 
             | I personally do not plan to add too many page links to my
             | console. However, I will add more console links, which has
             | the effect of expanding my console neighbourhood and
             | thereby increasing the pool of recommendations.
             | 
             | That said, I am not sure why it matters whether I add more
             | links to _my_ console specifically. In my opinion, any
             | single Wander instance should not matter much on its own.
             | What matters more is whether the network as a whole grows,
             | that is, more consoles being set up and more of them
             | linking to each other.
             | 
             | One of my design goals has been to avoid giving any
             | particular console a special status. All consoles are equal
             | participants in the network from a technical perspective.
             | You should be able to pick any console from the network,
             | perhaps one belonging to your favourite blogger, perhaps
             | even your own and explore the neighbourhood from there.
             | Yes, the neighbourhood would look different from each
             | console but that's pretty much the point of this project.
             | As long as the overall graph of consoles is connected, you
             | could in theory reach any community recommendation from any
             | starting point. Even if the graph is not fully connected, I
             | do not see that as a significant issue. It just reflects
             | how connections tend to form in a decentralised system.
             | Please let me know if you think I have missed your point
             | again.
        
       | dreko wrote:
       | This is really cool, I think the idea here is fantastic!
        
       | ab_testing wrote:
       | So like StumbleUpon
        
       | shevy-java wrote:
       | I don't know how useful this is, but I am getting tired of Google
       | and co ruining the world wide web how it once was. Something has
       | to be done. I have no idea whether this here can be of help or
       | not but the more people think about this, the better. Otherwise
       | the quality will continue to degrade.
        
       | bovermyer wrote:
       | So, is this a meta-webring, that allows for showing individual
       | sites but also sites that show other sites?
        
       | xnorswap wrote:
       | So is this web rings all over again?
        
         | moralestapia wrote:
         | It is StumbleUpon over again.
        
           | susam wrote:
           | There is indeed a lot of similarity with webrings and
           | StumbleUpon but there are some differences as well. I discuss
           | this in more detail in the project README here:
           | https://codeberg.org/susam/wander#faq
        
             | moralestapia wrote:
             | Just to clarify, I like Wander. I'd really like to see
             | something fill in the void left by StumbleUpon.
             | 
             | I used to spend hoooooooours wandering there.
        
         | worldsayshi wrote:
         | I kind of want webrings but with federated OIDC. I.e. you can
         | create an account at any of the sites and re-use the login on
         | the others to leave comments/add content. This has to exist in
         | some neat package right?
        
       | pacoWebConsult wrote:
       | We're inventing stumbleupon from first principles.
        
         | tlavoie wrote:
         | That... seems like a good thing!
        
       | thenthenthen wrote:
       | Tangent but wow codeberg is not blocked by the Great Firewall?
        
       | vydd wrote:
       | Delightful!
        
       | jna_sh wrote:
       | Title is wrong, isn't it Wander?
        
         | susam wrote:
         | Yes, I am not sure how I managed to mess up the project name. I
         | have emailed the moderators to ask for help in fixing it.
        
           | jna_sh wrote:
           | Oh I totally missed you had submitted it yourself! Thanks for
           | a wonderful project :)
        
           | dvh wrote:
           | Remove the iframe padding/margin on mobile.
        
           | tomhow wrote:
           | That was me sorry! I was quickly fixing it up while a meeting
           | was starting, and I hurriedly re-typed it rather than
           | copying+pasting like I should always do with project names.
        
       | InexSquirrel wrote:
       | Very cool. Reminds me of stumbleupon, which I lost many hours to
       | back in the day.
       | 
       | Curated discovery is one of biggest gripes with modern platforms
       | like youtube - discovering something truly new and outside of
       | your normal interests is really difficult, and the same goes for
       | the web. If you have a topic you want to explore it's fine, but
       | finding random things you'd never have thought of yourself is
       | much harder.
        
         | oystersareyum wrote:
         | Stumble upon led to most of my interests in life, so happy for
         | this
        
           | Uncle_Clark wrote:
           | Same. Curated content narrows the scope of discovery to find
           | meaningful things. I always look for a way to turn off that
           | "feature." Very cool!
        
         | rando77 wrote:
         | I've thought of a service that scans new websites and GitHub
         | repos and looks for things that don't look like anything else
         | (using something like hdbscan for outlier detection), and
         | creates a feed for people to follow.
        
       | cosmicgadget wrote:
       | Seems like a perfect addition to any links page.
       | 
       | Would it be possible to create a list of sites with a Wander?
        
       | superkuh wrote:
       | It would be cool if the javascript were re-written a bit to only
       | use standard long existing javascript features so one didn't have
       | to run a modern corporate browser to use the "wander"
       | functionality. It did not work in my browser even with JS
       | enabled.
        
       | touwer wrote:
       | love it!
        
       | thewanderer1983 wrote:
       | Have you considered including Gemini and gopher support? There is
       | a very nice small web community there.
        
       | realaliarain74 wrote:
       | this is more nuanced than the title suggests. worth reading the
       | whole thing
        
       ___________________________________________________________________
       (page generated 2026-03-18 23:00 UTC)