Data and databases · Independent · 22 Oct 2026

dadoonet/fscrawler

Elasticsearch File System Crawler (FS Crawler)

← Data and databases

In simple English

This tool reads files from your local computer or a remote server. It opens PDF files, Word documents and spreadsheets. It extracts all the words inside them. Then it saves those words into Elasticsearch (a search engine that lets you query millions of records instantly). You can run it inside Docker (a way to run a program inside its own sealed box, so it cannot break anything else on your server). It costs nothing to download and use under the Apache-2.0 licence.

What it is

FSCrawler is a utility that indexes local or remote file systems into Elasticsearch. It monitors folders for new, updated or deleted files and syncs changes automatically.

What it is good for

Solo builders who want to build a private internal search engine for thousands of documents, invoices or user manuals.

Stars1.5k
LicenceApache-2.0
Latestfscrawler-3.0 (2026-08-26)checked 22 Oct 2026
Last code change2026-10-21
Written inJava
Setup effort
3 / 5
Payoff
4 / 5
Good
  • Crawls local folders or remote servers over SSH and FTP.
  • Extracts text from PDF, Word, Excel and OpenOffice files automatically.
  • Runs easily inside a pre-built Docker container.
Watch for
  • Requires a running Elasticsearch server to function.
  • Configuration uses YAML files which can be tricky to set up.
  • Java memory needs can grow high when processing large PDF files.
Replaces

Writing custom folder walking scripts and file parsing code from scratch.

Works well with

Elasticsearch

Similar repositories
Also reviewed on Repo Radar
  • dbeaver/dbeaver52k stars

    A free desktop program that connects to more than a hundred kinds of database and lets you browse and edit them.

  • sqlfluff/sqlfluff10.0k stars

    A tool that checks SQL files for style problems and fixes most of them.

  • dimitri/pgloader6.5k stars

    Loads data into PostgreSQL from other databases and from files, keeping going when individual rows fail.

Install
docker pull dadoonet/fscrawler
docker run -it --rm \
  --add-host=host.docker.internal:host-gateway \
  -v ~/.fscrawler:/root/.fscrawler \
  -v $(pwd)/resumes:/tmp/es:ro \
  -e FSCRAWLER_ELASTICSEARCH_URLS=http://host.docker.internal:9200 \
  dadoonet/fscrawler

Independent: reviewed for Repo Radar outside the daily editions. Every independent repository

On Stack Radar: Productivity & Collaboration › Documents, Notes & Knowledge › Document Search & Indexing.

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.