Repolode
codelibs

codelibs/fess

Self-hosted enterprise and site search server built on OpenSearch, with crawlers for web, file, and data store sources.

Open-source alternative to:Google Site Search

Stars
1,144
Forks
177
Open issues
15
Last commit
7 hours ago

What is it?

Fess is a search server you install and run on any platform with a Java runtime. It uses OpenSearch as its search engine, but administrators configure it through a browser-based admin UI without needing OpenSearch expertise.

A built-in crawler collects documents from websites, file systems, and data stores such as databases, CSV files, cloud storage, and SaaS services like Confluence, Slack, and SharePoint. Many formats are indexed, including Microsoft Office, PDF, and ZIP archives. Search results can be filtered by role and permission, and users can sign in through LDAP, OpenID Connect, SAML, SPNEGO, or Microsoft Entra ID.

Fess can be run from ZIP, RPM, or DEB packages, or with Docker images that bundle OpenSearch. A separate Fess Site Search project offers an embeddable search box for your own website.

Key features

  • 01Full-text search with faceting, sorting, and search suggestions
  • 02Crawlers for websites, file systems, and data stores including databases and SaaS services
  • 03Indexing of Microsoft Office, PDF, and archive formats
  • 04Browser-based admin UI and REST API
  • 05Role- and permission-based filtering of search results
  • 06Single sign-on via LDAP, OpenID Connect, SAML, SPNEGO, and Entra ID
  • 07Plugin system for data stores, ingest, scripts, and themes

Use cases

  • Adding a private search engine over a company's internal wikis, file shares, and documents
  • Providing search for a website without relying on a third-party hosted service
  • Searching across SaaS tools like Slack, Confluence, or SharePoint in one place
  • Building a permission-aware search portal for multiple user groups

Quick start

  1. 1

    Install Java 21 or later

  2. 2

    Download the ZIP from the Releases page and extract it

    unzip fess-<version>.zip
  3. 3

    Change into the extracted directory

    cd fess-<version>
  4. 4

    Start Fess, then open http://localhost:8080/

    ./bin/fess

Things to know

  • Requires OpenSearch as its search backend, which you must set up separately outside the Docker images.
  • Requires Java 21 or later for the ZIP, RPM, and DEB packages.

In collections

Topics

FAQ

What is fess?
Self-hosted enterprise and site search server built on OpenSearch, with crawlers for web, file, and data store sources. Fess is a search server you install and run on any platform with a Java runtime. It uses OpenSearch as its search engine, but administrators configure it through a browser-based admin UI without needing OpenSearch expertise.
Is fess free to use? What license does it have?
fess is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is fess still maintained?
Actively maintained. The last commit to fess was on Nov 6, 2026.
What can I use fess for?
Adding a private search engine over a company's internal wikis, file shares, and documents Providing search for a website without relying on a third-party hosted service Searching across SaaS tools like Slack, Confluence, or SharePoint in one place Building a permission-aware search portal for multiple user groups
How do I install fess?
Install Java 21 or later Download the ZIP from the Releases page and extract it: unzip fess-<version>.zip Change into the extracted directory: cd fess-<version> Start Fess, then open http://localhost:8080/: ./bin/fess
Where can I get fess?
The source code and installation instructions are on GitHub: https://github.com/codelibs/fess

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects