File format, model, API, and apps for manipulating text and its annotated features
Type Name Latest commit message Commit time
Failed to load latest commit information.
test gathered in the app tutorials Nov 22, 2018
.gitignore docs location changed May 11, 2018
MANIFEST near release 7 Nov 13, 2018
mkdocs.yml prepare some fixes Dec 11, 2018


DOI text-fabric

Text-Fabric is several things:

  • a browser for ancient text corpora
  • a Python3 package for processing ancient corpora

A corpus of ancient texts and linguistic annotations represents a large body of knowledge. Text-Fabric makes that knowledge accessible to non-programmers by means of built-in a search interface that runs in your browser.

From there the step to program your own analytics is not so big anymore.

You can export your results to Excel and work with them from there.

And if that is not enough, you can call the Text-Fabric API from your Python programs. This works really well in Jupyter notebooks.


Text Fabric is a Python(3) package on the Python Package Index, so you can install it easily with pip from the command line. Here are the precise installation instructions.


On Windows?

You can click the Start Menu, and type text-fabric bhsa or text-fabric uruk in the search box, and then Enter.

On Linux or Macos?

You can open a terminal (command prompt), and just say

text-fabric bhsa


text-fabric uruk

The corpus data will be downloaded automatically, and be loaded into text-fabric. Then your browser will open and load the search interface. There you'll find links to further help.


There is extensive documentation. If you start using the Text-Fabric API in your programs, you'll need it.

Jump off to the docs


In order to work with Text-Fabric, you need a dataset to operate on. Such a data set must be in TF format.


It is possible to prepare a dataset in TF format and extend Text-Fabric with an app that has further knowledge of that specific dataset.

The current distribution of Text-Fabric contains the following apps:

app dataset
bhsa Biblia Hebraica Stuttgartensia Amstelodamensis
peshitta Peshitta (Syriac Old Testament
syrnt Syriac New Testament
uruk Proto-Cuneiform tablets from Uruk IV/III

An app takes care of automatic downloading of the dataset and it supports the Text-Fabric browser.

This repository is being archived continuously by the Software Heritage Archive. If you want to cite snippets of the code of this repository, the Software Archive offers an easy and elegant way to do so. As an example, here I quote the stitching algorithm, by means of which Text-Fabric Search collects the solutions of a search template. The quote refers directly to specific lines of code, deeply buried in a Python file within a particular version of Text-Fabric.