Distributed Peer-to-Peer Web Search Engine and Intranet Search Appliance http://yacy.net/
Go to file
2013-07-11 21:48:49 +02:00
.settings made class methods static where possible 2012-07-05 12:38:41 +02:00
addon Revert "Revert "Windows installer: update logo"" 2013-07-11 21:48:49 +02:00
bin - added more selection criteria for network seed list 2013-03-10 02:26:24 +01:00
debian added a feature to find similarities in documents. 2012-11-21 18:46:49 +01:00
defaults metager whitelist update 2013-07-10 15:13:04 +02:00
dictionaries changed way to integrate dictionary files: 2009-09-02 18:42:13 +00:00
examples corrections in dublin core syntax 2009-04-17 12:23:00 +00:00
htroot re-insert this file - was deleted by mistake 2013-07-10 18:32:12 +02:00
langstats added changes from copperdust (submitted by email): 2012-02-22 12:21:27 +01:00
lib added metadata-extractor-2.6.2.jar to eclipse classpath, removed old lib 2013-06-26 09:26:34 +02:00
libbuild add Maven build script 2013-01-20 21:08:59 +01:00
libt move testing SolrServlet.main to test, making include of jetty*.jar in distribution and classpath obsolete 2013-02-03 22:32:38 +01:00
locales New Hindi Translation 2013-04-30 03:33:21 +05:30
nbproject adjust Netbeans IDE project.xml classpath for Solr 4.2.1 jars 2013-04-06 23:00:48 +02:00
skins do not cut text on submit buttons 2013-07-07 19:17:29 +02:00
source another patch to prevent CLOSE_WAIT status on solr connections 2013-07-11 12:53:39 +02:00
test - odt & ooxml (office document) parser correction to add content to fulltext index 2013-05-20 01:50:09 +02:00
vocabularies moved yacy.logging to defaults according to request in 2012-05-17 04:26:03 +02:00
.checkstyle problems with code style 2009-06-29 22:22:35 +00:00
.classpath added metadata-extractor-2.6.2.jar to eclipse classpath, removed old lib 2013-06-26 09:26:34 +02:00
.gitignore Revert "do not use remote proxy if not switched on - regardless of the proto" 2013-07-04 19:13:51 +02:00
.project replaced four old libraries with latest version 2010-02-26 14:14:50 +00:00
assembly.xml add Maven build script 2013-01-20 21:08:59 +01:00
AUTHORS added flori and me 2008-06-13 10:05:31 +00:00
build.nsi windows installer: update to latest jre 2013-06-29 18:54:30 +02:00
build.properties start of next development cycle with small version number 0.01 (as in 2013-06-17 13:28:28 +02:00
build.xml bump up lib/metadata-extractor-2.6.2.jar (used for image parser) with needed code adjustments 2013-06-25 23:24:02 +02:00
COPYRIGHT updated copyright message; included LGPL for 'cora' and a warranty 2013-06-30 11:30:39 +02:00
getWin32MaxHeap.bat update for memory observer algorithm 2009-12-06 17:45:48 +00:00
gpl.txt initial load with yacy 0.36 2005-04-07 19:19:42 +00:00
killYACY.sh delete yacy.running after kill as requested in 2012-02-22 18:41:32 +01:00
lgpl21.txt migrated all my LGPL 3 -licensed files to the LGPL 2.1 because LGPL 3 is not compatible to the GPL 2 2010-06-28 16:25:14 +00:00
NOTICE * updated jxpath to latest v1.3 2009-07-15 16:13:24 +00:00
pom.xml add Maven build script 2013-01-20 21:08:59 +01:00
readme.txt hint to open firewalls 2011-12-27 20:37:56 +01:00
reconfigureYACY.sh *) fixed admin password configuration 2013-01-24 20:09:33 +01:00
startYACY_debug.bat adapt windows start script parameters to linux start script parameter 2013-07-11 21:46:17 +02:00
startYACY.bat adapt windows start script parameters to linux start script parameter 2013-07-11 21:46:17 +02:00
startYACY.sh Reverted setting of MMapDirectoryFactory from solrconfig; see 2013-01-21 17:55:28 +01:00
stopYACY.bat remove CPGEN from Windows batch files 2013-02-17 03:26:46 +01:00
stopYACY.sh fixed bad output in stopYACY.sh 2012-09-25 23:20:09 +02:00
updateYACY.sh - moved test data from /bin to /test/words 2010-02-22 20:14:16 +00:00
yacy-packages.readme added documentation for new yacy package structure 2009-10-20 12:05:36 +00:00
yacy.badwords.example *added translation for 2007-01-17 16:58:48 +00:00
yacy.stopwords - fix stopword handling for RWI see example http://bugs.yacy.net/view.php?id=247 2013-06-06 22:07:54 +02:00
yacy.stopwords.de german stopwords. 2005-09-15 16:30:16 +00:00
yacy.yellow performance setting for remote indexing configuration and latest changes for 0.39 2005-07-22 13:56:19 +00:00

== WHAT IS THIS? ==
YaCy is a search engine software. It takes a new approach to search
because it does not use a central server. Instead, its search results
come from a network of independent peers. In such a distributed network,
no single entity decides what gets listed, or in which order results appear.

The YaCy search engine runs on each user's own computer. Search terms are
hashed before they leave the user's computer. Different from conventional
search engines, YaCy is designed to protect the users' privacy.
A user's computer can create with YaCy its individual search indexes and
rankings, so that results better match what the user is looking for over time.
YaCy also makes it easy to create a customized search portal with a few clicks.

Each YaCy user is either part of a large search network (YaCy contains a
peer-to-peer network protocol to exchange search indexes with other YaCy
search engine installations) or the user runs YaCy to produce
a personal search portal that can be either public or private.

YaCy search portals can also be placed in intranet environment which makes
YaCy a replacement for commercial enterprise search solutions. A network
scanner makes it easy to discover all available http, ftp and smb servers.

To create a web index, YaCy has a web crawler for 
everybody, without censorship and central data retention:
- search the web (automatically using all other YaCy peers)
- co-operative crawling; support for other crawlers
- intranet indexing and search
- set up your own search portal
- all users have equal rights
- comprehensive concept to anonymise the users' index

To be able to perform a search using the YaCy network, every user has to
set up their own node. More users are leading to higher index capacity
and better distributed indexing performance.


== LICENSE ==
YaCy is published under the GPL v2
The source code is inside the release package (see /source and /htroot).


== WHERE IS THE DOCUMENTATION? ==
Documentation can be found at:
(Home Page)        http://yacy.net/
(German Forum)     http://forum.yacy.de/
(Wiki:de)          http://www.yacy-websuche.de/wiki/index.php/De:Start
(Wiki:en)          http://www.yacy-websearch.net/wiki/index.php/En:Start
(Tutorial Videos)  http://yacy.net/en/Tutorials.html and http://yacy.net/de/Lehrfilme.html

Every of these locations has a (YaCy) search functionality which combines
all these locations into one search result.


== DEPENDENCIES? WHAT OTHER SOFTWARE DO I NEED? ==
You need java 1.6 or later to run YaCy, nothing else.
Please download it from http://www.java.com

YaCy also runs on IcedTea6.
See http://icedtea.classpath.org

NO OTHER SOFTWARE IS REQUIRED!
(you don't need apache, tomcat or mysql or whatever)


== HOW DO I START THIS SOFTWARE? ==
Startup and Shutdown of YaCy:

- on GNU/Linux:
to start: execute ./startYACY.sh
to stop : execute ./stopYACY.sh

- on Windows:
to start: double-click startYACY.bat
to stop : double-click stopYACY.bat

- on Mac OS X:
please use the Mac Application and start or stop it like any
other Mac Application (doubleclick to start)


== HOW DO I USE THIS SOFTWARE, WHERE IS THE ADMINISTRATION INTERFACE? ==
YaCy is a build on a web server. After you started YaCy,
start your browser and open

   http://localhost:8090

There you can see your personal search and administration interface.


== WHAT IF I INSTALL YACY (HEADLESS) ON A SERVER ==
You can do that but YaCy authorizes users automatically if they
access the server from the localhost. After about 10 minutes a random
password is generated and then it is not possible to log in from
a remote location. If you install YaCy on a server that is not your
workstation, then you must set an administration account immediately
after the first start-up. Open:

http://<remote-server-address>:8090/ConfigAccounts_p.html

and set an administration account.


== PORT 8090 IS BAD, PEOPLE ARE NOT ALLOWED TO ACCESS THAT PORT ==
You can forward port 80 to 8090 with iptables:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8090
On some operation systems, you must first enable access to the ports you are using like:
iptables -I INPUT -m tcp -p tcp --dport 8090 -j ACCEPT


== HOW CAN I SCALE THIS; HOW MUCH RAM IS NEEDED; DISK SPACE? ==
YaCy can scale up to many millions of web pages in your own search index.
The default assignment of RAM is 600MB which is assigned to the java
process but not permanently used by it. The GC process will free the memory
once in a while. If you have a small index (i.e. about 100000 pages)
then you may assign _less_ memory (i.e. 200MB) but if your index scales
up to over 1 million web pages then you should start to increase the
memory assignment. Open http://localhost:8090/Performance_p.html
and set a higher/lower memory assignment.
If you have millions of web pages in your search index then you might
habe gigabytes of disk space allocated. You can reduce the disk
space i.e. setting the htcache space to a different size; to do that
open http://localhost:8090/ConfigHTCache_p.html and set a new size.



== JOIN THE DEVELOPMENT! ==
YaCy was created with the help of many. About 30 programmers have helped,
a list of some of them can be seen here: http://yacy.net/en/Join.html
Please join us!


== HOW TO GET THE SOURCE CODE AND HOW TO COMPILE YACY YOURSELF? ==
The source code is inside every YaCy release. You can also get YaCy
from https://gitorious.org/yacy/rc1
Please clone our code and help with development!
The code is licensed under the GPL v2.

Compiling YaCy:
- you need java 1.6 and ant
- just compile: "ant clean all" - then you can "./startYACY.sh"
- create a release tarball: "ant dist"
- create a Mac OS release: "ant distMacApp" (works only on a Mac)
- create a debian release: "ant deb"
- work with eclipse: within eclipse you also need to start the ant build process
  because the servlet pages are not compiled by the eclipse build process
after the dist prodecure, the release can be found in the RELEASE subdirectory


== ARE THERE ANY APIs OR HOW CAN I ATTACH SOFTWARE AT YACY? ==
There are many interfaces build-in in YaCy and they are all based on http/xml and
http/json. You can discover these interfaces if you notice the orange "API" icon in
the upper right of some web pages in the YaCy web interface. Just click on it and
you will see the xml/json version of the information you just have seen at the web
page.
A different approach is the usage of the shell script provided in the /bin
subdirectory. The just call also the web interface pages. By cloning some of those
scripts you can create more shell api access methods yourself easily.


== CONTACT ==
Our primary point of contact is the german forum at http://forum.yacy.net
There is also an english forum at http://www.yacy-forum.org
We encourage you to start a YaCy forum in your own language.

If you have any questions, please do not hesitate to contact the maintainer:
Send an email to Michael Christen (mc@yacy.net) with a meaningful subject
including the word 'yacy' to prevent that your email gets stuck
in my anti-spam filter.

If you like to have a customized version for special needs,
feel free to ask the author for a business proposal to customize YaCy
according to your needs. We also provide integration solutions if the
software is about to be integrated into your enterprise application.

Germany, Frankfurt a.M., 26.11.2011
Michael Peter Christen