Skip to content
Zoltán Kovács edited this page Apr 2, 2026 · 14 revisions

Basic concepts

Scientific research

Studying the Bible is not just a hobby. It comes not only from a personal motivation. It has a great significance at a global level, namely: Is it indeed God's word, or is the Bible just a good read but not a must read, written by the Almighty?

Such questions can, of course, be answered at a personal level. But there is more behind that. We have good resources to identify the original version of the New Testament quite closely, and there are promising research projects that are near discovering the sources of the Greek translation of the Old Testament. Good approximations for both texts are available in electronic forms, and such, they are quite ready to be studied not just by mortal human beings in imperfect ways, but by computer algorithms mechanically.

Yes, human beings are imperfect, and they tend to be biased for God's word (and also, against it, of course). But, if some questions can be decided mechanically, why not use computers to help us being unbiased and to make scientific statements and decisions?

In fact, certain decisions still require humans. But such questions like "Does Paul quote the Old Testament letter by letter?" or "Which books of the Old Testament play the most important role in the quotations?", could be clearly well-supported by computers. The bibref project aims at answering such questions, and tries to be as neutral as possible in such ones like "Is this a quotation or rather an allusion?"

Reproducibility of an open research

The bibref project has been started in 2020 declaring reproducible research as its highest priority. Therefore, freely available Bible texts, free databases and open source tools were considered as the main ingredients of the project, at the very beginning. An earlier tool, lxx, however, has existed already since 2018, based on some simpler, different algorithmical concepts. Finally, bibref has been a new project which used the same SWORD library with C++ bindings: it helped the software tool be efficient and fast. Both the GNU C++ project and SWORD were good examples of open source collaboration of open minded developers, and they seemed to be a good basis for a long term project.

Command driven approach

Reproducibility also meant that a command driven approach is a requirement. Hence, bibref is mainly a command based tool. Its first versions were available only via a command line interface. The newest version provides a graphical user interface (GUI), but the command based concept is still important.

  • The available Commands are listed on a dedicated page.

Visualization

Visualization of research results is a second priority of the program. To obtain useful graphs and other data, it is possible to use the GUI or the command line interface as well.

User interfaces

Graphical user interface

A bibref version based on the Qt graphical framework

Most users may be interested in the graphical user interface (GUI) which is available on Windows, macOS and Linux, or on the web. The newest version can be downloaded or tried out online at the Releases page.

  • Read more on the GUI.

Terminal based user interface

A bibref version based on jquery.terminal

Researchers may be interested in a terminal based interface, being available on Windows, macOS, Linux and the web. Currently, the web based interface is the simplest variant that can be immediately used online in the following versions:

The web based version has some limitations in speed and the available memory, that is, complex queries may be slow or impossible to evaluate.

Linux users may install the terminal based version here:

Get it from the Snap Store

Windows and macOS users need to compile bibref on their own if they would like to use the terminal natively.

bibref as a Python module

This experimental platform allows programmers to access to bibref's commands via a simple interface. The terminal based version of bibref must be preinstalled before using the Python module. Communication between the module and the preinstalled command line interface is performed via Python's pexpect module.

The Python module is available at the PyPI repository. Alternatively, an obsoleted version can be found in the py folder of the main directory of the project. An example use case is provided in the file module-demo.py. For example, the following piece of code loads the module first, then it finds the longest possible quoted text in Psalms 2 from the LXX Bible edition, according to the SBLGNT text (it is 131). Then, a Greek text is put into clipboard 1, which is then searched in the LXX and StatResGNT Bible editions:

from bibref.tools import *
print(getrefs_maxlength("SBLGNT LXX Psalms 2"))
text1("υιος μου ει συ εγω σημερον γεγεννηκα σε")
print(find1("LXX"))
print(find1("StatResGNT"))

The list of currently supported commands can be found in the file py/bibref/tools.py when starting from the main directory of the project.

Further use cases can be found in the isbtf-lxx-nt-tools project.

Authors and copyright

See the Authors page.

Clone this wiki locally