This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
| YaCy | |
|---|---|
| Original author | Michael Christen |
| Developer | YaCy community |
| Release | 2003 |
| Stable release | 1.940_202412022212
/ 2 December 2024 |
| Written in | Java |
| Operating system | Cross-platform |
| Size | 104-113 MB |
| Type | Overlay network, Search engine |
| License | GPL-2.0-or-later |
| Website | yacy |
| Repository | github |
YaCy (pronounced “ya see”) is a free distributed search engine built on the principles of peer-to-peer (P2P) networks, created by Michael Christen in 2003. The engine is written in Java and distributed on several hundred "YaCy-peer" computers, as of September 2006[update][needs update].
Each YaCy-peer independently crawls through the Internet, analyzes and indexes found web pages, and stores indexing results in a common database which is shared with other YaCy-peers using principles of peer-to-peer. This decentralized approach ensures privacy and eliminates the need for a central server.
Compared to semi-distributed search engines, the YaCy network has a distributed architecture. All YaCy-peers are equal and no central server exists. It can be run either in a crawling mode or as a local proxy server, indexing web pages visited by the person running YaCy on their computer. Several mechanisms are provided to protect the user's privacy. Search functions are accessed by a locally run web server which provides a search box to enter search terms, and returns search results in a format similar to popular search engines.
YaCy search engine is based on four elements:



YaCy uses a combination of techniques for the networking, administration, and maintenance of indexing the search engine, including blacklisting, moderation, and communication with the community. Here is how YaCy performs these operations:
YaCy is available in packages for Linux, Windows, and Macintosh, and also as a Docker image; it can also be installed on other operating systems either by manually building it, or using a tarball. YaCy requires Java 11, Temurin 11 is recommended.
The Debian package can be installed from a repository available at the subdomain of the project's website, but is not yet maintained in the official Debian package repository.