Skip to content
Fess is very powerful and easily deployable Enterprise Search Server.
Java Other
  1. Java 98.6%
  2. Other 1.4%
Branch: master
Clone or download

Latest commit

Latest commit bb4e241 May 30, 2020


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Update May 15, 2020
.travis update travis script Feb 6, 2019
dbflute_fess fix #1916 remove ...ToRole and ...ToLabel Nov 28, 2018
src fix #2461 change logger name May 28, 2020
.gitattributes modify git configuration. Sep 15, 2013
.gitignore fix #2205 move fess-ds to plugin Aug 15, 2019
.travis.yml use xenial Apr 29, 2019
LICENSE update LICENSE NOTICE May 8, 2018 Update Mar 5, 2019
NOTICE fix #2366 use https Jan 15, 2020 update doc May 30, 2020
dbflute.xml version 13.7 May 14, 2020
deps.xml update dependencies May 22, 2020
plugin.xml update plugins May 21, 2020
pom.xml [maven-release-plugin] prepare for next development iteration May 23, 2020

Fess Enterprise Search Server Tweet

Build Status Maven Central License


Fess is a very powerful and easily deployable Enterprise Search Server. You can quickly install and run Fess on any platform where you can run the Java Runtime Environment. Fess is provided under the Apache License 2.0.

Fess is based on Elasticsearch, but knowledge/experience about Elasticsearch is not required. Fess provides an easy to use Administration GUI to configure the system via your browser. Fess also contains a Crawler, which can crawl documents on a web server, file system, or Data Store (such as a CSV or database). Many file formats are supported including (but not limited to): Microsoft Office, PDF, and zip.

Fess Site Search is a free alternative to Google Site Search. For more details, see the FSS JS Generator documentation.



Getting Started

There are 2 ways to try Fess. The first is to download and install yourself. The second is to use Docker.

Download and Install/Run

Fess 13.7 is now available and can be downloaded on the Releases page. Downloads come in 3 flavors: deb, rpm, zip.

The following commands show how to use the zip download:

$ unzip
$ cd fess-13.7.x
$ ./bin/fess

For more details, see the Installation Guide.


We provide Docker images on Docker Hub. We also provide a Docker Compose (YAML) file in this repository.

Browser UI

Search UI

Admin UI

You can register crawling targets in the Admin UI on the (Web, File, Data Store) crawler configuration pages, and then start the Crawler manually on the Scheduler page.

Migration from another search provider

Please see

Data Store

Currently, Fess supports crawling the following storage locations and APIs:





Development Information

Get Source Code

  1. Clone Fess's repository:

    $ cd ~/workspace
    $ git clone
  2. Import the cloned repository as a Maven project on Eclipse or another IDE.

Setup for Elasticsearch Plugins

Run antrun:run to download plugins into the plugins directory:

$ mvn antrun:run

Run Fess

Run or debug org.codelibs.fess.FessBoot on your IDE, and then access http://localhost:8080/

Build Package

Run the package goal and then the release file will be created in target/releases.

$ mvn package
$ mvn rpm:rpm   # .rpm package
$ mvn jdeb:jdeb # .deb package

Generate Source Code

$ mvn dbflute:download # (one time command)
$ mvn dbflute:freegen
$ mvn license:format

Integration Tests

Launch Fess Server and run the following command:

$ mvn test -P integrationTests -Dtest.fess.url="http://localhost:8080""http://localhost:9201"

To run a single test case, you can use:

$ mvn test -P integrationTests -Dtest.fess.url="http://localhost:8080""http://localhost:9201" -Dtest=SearchApiTests

Translate In Your Language

Fess is internationalized software.

If you want to add labels/messages for your language, please translate properties file and then rename to fess_*_[lang].properties.

For search/index analyzer, if doc.json contains lang_[lang] for your language, please modify the analyzer for your language. For more details about Analyzers, see the Elasticsearch documentation.

We welcome pull requests for your language.

Powered By

You can’t perform that action at this time.