I’ve been working on a new search engine system that’s fully peer-to-peer, with no trusted third party. Today, I’m excited to unveil Admarus, a decentralized search engine for the decentralized web (specifically, IPFS).
🔥 Try the gateway-based demo! 🔥
💡 Motivation
IPFS is a network for storing and sharing data. Hopes are that it could be the foundation of a new, distributed web. This new web would aim to guarantee freedom of speech, privacy, and access to information, while eliminating censorship and gatekeeping.
However, at present, IPFS primarily functions as a storage solution rather than a fully realized web platform. Unlike the conventional web, browsing an IPFS-based web is not yet a seamless experience, as finding content can be challenging, if not impossible.
One of the reasons the current web was successful was its ease of finding content. If we are going to build a new web on IPFS, we need to make IPFS searchable. And we can’t just use a centralized system, because that would be missing the whole point. The search engine must be decentralized and open, aligning with the core principles of the IPFS network. For IPFS to be widely adopted and relevant as a web platform, implementing a decentralized and open search engine is essential.
I would like to give credit to this tweet for inspiring me to start working on Admarus.
A pure peer to peer knowledge indexer and search engine is the real end game.
— Paolo Ardoino 🍐 (@paoloardoino) June 9, 2022
Not blockchain based, it will never scale.
Just peer storage, peer indexing, peer stuff.
No token will be needed to access knowledge 🤫
There have already been many attempts at building new search engines. Sadly, all of them are disappointingly centralized and/or not viable. There is no point in building a new web if it’s also going to be ruled by big companies. As Paolo said, it must be peer-to-peer like IPFS, not reliant on fat blockchains and unsustainable tokens. This is the idea behind Admarus, and that’s what makes it different.
✨ Features
- No storage use: Admarus indexes data that’s already in your Kubo node
- Search operators: AND, OR, and NOT
- Trustless: Results are verified, not trusted
- Language detection: Language is detected from text
- Scalable: Gets faster as more peers join
- Censorship-resistant: Censors would need full control of more than 95% of the network
- Open: Nodes don’t discriminate on obscure criteria (hi emails)
- Decentralized: No central authority. Multiple peer discovery mechanisms are available
- Blockchain-free: No blockchain, no token, just peer-to-peer magic
- Developer-friendly: Practical API for building apps and bots
Admarus is open-source, check it out on Github!
📐 Design
If you are familiar with the IPFS’s design, you will immediately be with Admarus'.
Kubo runs a daemon on port 4001
and provides an HTTP API on port 5001
.
Admarus runs a daemon on port 4002
and provides an HTTP API on port 5002
.
Like IPFS, Admarus has a web user interface and a public gateway for convenience.
Admarus is intended to run on machines that are running Kubo. When you run the daemon, it automatically connects to Kubo. It will then start indexing all the documents you have pinned. (Only HTML documents are currently supported.) These documents will now be searchable in the entire network.
This is game-changing for discoverability on IPFS. Considering this drives traffic to websites you pin, it gives an incentive to everyone to publish their websites to IPFS.
🤝 How to Contribute
At its current stage, the Admarus network is relatively small, indexing only a subset of Wikipedia and a few other websites. You can make a significant impact by running a node and helping the network grow!
Guides and documentation are available on the project’s wiki.
If you have a static website, consider adding it to ipfs and running Admarus. Developers can also contribute by building bridges to prominent websites (news, forums, wikis, torrent websites, etc.), thereby contributing to archiving and decentralizing the web.
You can also directly support the project by giving it a star on Github or donating a few sats.
🚀 The Road Ahead
With the Minimum Viable Product (MVP) now available, our next focus is on the alpha release, which is planned for the end of the summer. Some of the upcoming features include support for image and video documents, UI and UX improvements, performance optimizations, and ranking tweaks.
Join us on this exciting journey as we work towards a truly decentralized, open, and censorship-resistant search engine for IPFS!