All Projects → ipfs-search → Ipfs Search

ipfs-search / Ipfs Search

Licence: agpl-3.0
Search engine for the Interplanetary Filesystem.

Programming Languages

go
31211 projects - #10 most used programming language
golang
3204 projects

Projects that are alternatives of or similar to Ipfs Search

Mahuta
IPFS Storage service with search capability
Stars: ✭ 185 (-64.35%)
Mutual labels:  search-engine, elasticsearch, ipfs
RabbitMQ-with-Django
Example for using Microservices with RabbitMQ in a Django Web-Application
Stars: ✭ 26 (-94.99%)
Mutual labels:  rabbitmq, ipfs
Elasticsearch
Free and Open, Distributed, RESTful Search Engine
Stars: ✭ 57,778 (+11032.56%)
Mutual labels:  search-engine, elasticsearch
Toshi
A full-text search engine in rust
Stars: ✭ 3,373 (+549.9%)
Mutual labels:  search-engine, elasticsearch
Rusticsearch
Lightweight Elasticsearch compatible search server.
Stars: ✭ 171 (-67.05%)
Mutual labels:  search-engine, elasticsearch
Image To Image Search
A reverse image search engine powered by elastic search and tensorflow
Stars: ✭ 200 (-61.46%)
Mutual labels:  search-engine, elasticsearch
Go Cyber
Your 🔵 Superintelligence
Stars: ✭ 270 (-47.98%)
Mutual labels:  search-engine, ipfs
Srchx
A standalone lightweight full-text search engine built on top of blevesearch and Go with multiple storage (scorch, boltdb, leveldb, badger)
Stars: ✭ 118 (-77.26%)
Mutual labels:  search-engine, elasticsearch
Xapiand
Xapiand: A RESTful Search Engine
Stars: ✭ 347 (-33.14%)
Mutual labels:  search-engine, elasticsearch
Elasticsearch
The missing elasticsearch ORM for Laravel, Lumen and Native php applications
Stars: ✭ 375 (-27.75%)
Mutual labels:  search-engine, elasticsearch
Gnomock
Test your code without writing mocks with ephemeral Docker containers 📦 Setup popular services with just a couple lines of code ⏱️ No bash, no yaml, only code 💻
Stars: ✭ 398 (-23.31%)
Mutual labels:  elasticsearch, rabbitmq
Rated Ranking Evaluator
Search Quality Evaluation Tool for Apache Solr & Elasticsearch search-based infrastructures
Stars: ✭ 134 (-74.18%)
Mutual labels:  search-engine, elasticsearch
Invenio
Invenio digital library framework
Stars: ✭ 469 (-9.63%)
Mutual labels:  elasticsearch, rabbitmq
Dweb.page
Your Gateway to the Distributed Web
Stars: ✭ 239 (-53.95%)
Mutual labels:  search-engine, ipfs
Haystack
🔍 Haystack is an open source NLP framework that leverages Transformer models. It enables developers to implement production-ready neural search, question answering, semantic document search and summarization for a wide range of applications.
Stars: ✭ 3,409 (+556.84%)
Mutual labels:  search-engine, elasticsearch
Springboot Learn
🌹springboot常用框架整合示例,涉及多种网站监控,数据缓存,网络通信,持久层,权限管理,常用工具等
Stars: ✭ 270 (-47.98%)
Mutual labels:  elasticsearch, rabbitmq
Thesaurus Of Job Titles
Open Source Thesaurus of Job Titles in US English
Stars: ✭ 77 (-85.16%)
Mutual labels:  search-engine, elasticsearch
Ik Analyzer
支持Lucene5/6/7/8+版本, 长期维护。
Stars: ✭ 112 (-78.42%)
Mutual labels:  search-engine, elasticsearch
Springboot Learning
基于Gradle构建,使用SpringBoot在各个场景的应用,包括集成消息中间件、前后端分离、数据库、缓存、分布式锁、分布式事务等
Stars: ✭ 340 (-34.49%)
Mutual labels:  elasticsearch, rabbitmq
Cookbook
🎉🎉🎉JAVA高级架构师技术栈==任何技能通过 “刻意练习” 都可以达到融会贯通的境界,就像烹饪一样,这里有一份JAVA开发技术手册,只需要增加自己练习的次数。🏃🏃🏃
Stars: ✭ 428 (-17.53%)
Mutual labels:  elasticsearch, rabbitmq

ipfs-search.com

Build Status Docker Build Status Maintainability Test Coverage Go Reference Backers on Open Collective Sponsors on Open Collective

Search engine for the Interplanetary Filesystem. Sniffs the DHT gossip and indexes file and directory hashes.

Metadata and contents are extracted using ipfs-tika, searching is done using ElasticSearch 7, queueing is done using RabbitMQ. The crawler is implemented in Go, the API and frontend are built using Node.js.

The ipfs-search command consists of two components: the crawler and the sniffer. The sniffer extracts hashes from the gossip between nodes. The crawler extracts data from the hashes and indexes them.

Docs

A preliminary start at providing a minimal amount of documentation can be found in the docs folder.

Contact

Please find us on our Freenode/Riot/Matrix channel #ipfssearch.

Snapshots

ipfs-search provides the daily snapshot for all of the indexed data using elasticsearch snapshots. To learn more about downloading and restoring snapshots, read docs

Related repo's

Contributors wanted

Building a search engine like this takes a considerable amount of resources (money and TLC). If you are able to help out with either of them, mail us at [email protected] or find us at #ipfssearch on Freenode (or #ipfs-search:chat.weho.st on Matrix).

Please read the Contributing.md file before contributing.

Roadmap

For discussing and suggesting features, look at the issues.

Dependencies

  • Go 1.13
  • Elasticsearch 7.x
  • RabbitMQ / AMQP server
  • NodeJS 9.x
  • IPFS 0.7

Configuration

Configuration can be done using a YAML configuration file, or by specifying the following environment variables:

  • IPFS_TIKA_URL
  • IPFS_API_URL
  • ELASTICSEARCH_URL
  • AMQP_URL

A default configuration can be generated with:

ipfs-search -c config.yml config generate

(substitute config.yml with the configuration file you'd like to use.)

To use a configuration file, it is necessary to specify the -c option, as in:

ipfs-search -c config.yml crawl

The configuration can be (rudimentarily) checked with:

ipfs-search -c config.yml config check

Building

$ go get ./...
$ make

Running

Docker

The most convenient way to run the crawler is through Docker. Simply run:

docker-compose up

This will start the crawler, the sniffer and all its dependencies. Hashes can also be queued for crawling manually by running ipfs-search a <hash> from within the running container. For example:

docker-compose exec ipfs-crawler ipfs-search add QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv

Ansible deployment

Automated deployment can be done on any (virtual) Ubuntu 16.04 machine. The full production stack is automated and can be found in it's own repository.

Contributors

This project exists thanks to all the people who contribute.

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors


ipfs-search is supported by NLNet through the EU's Next Generation Internet (NGI0) programme.

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].