Learning with Texts

Latest Stable Version License PHP Version Require Composer Continuous Integration Docker Image Discord Server

Learning with Texts (LWT) is a tool for language learning by reading. It is a self-hosted web application.

You feel that you won’t learn much by translating dumb sentences or using grammar books? Learning With Texts offers you the possibility to learn by reading texts in your target language. Concept: when you don’t know a word in a text, just click it. We show you the translation, and you will have regular tests to remember it. Ready to go?

THIS IS A THIRD PARTY VERSION. This version is not the official one, and brings many improvements and new features. It is quicker, has smaller database size, and is open for contributions. The official version is on source forge

HugoFara: I don’t plan to continue developping LWT on a regular basis. While I may keep maintaining for fun, I recommend jzohrab/lute-v3 as the main target for development effort in the LWT software family.


As LWT is self-hosted, you will need a server, which can be your computer. You can either use Docker (recommended), or install it on your machine.

Docker (any OS)

Install Docker (if not already done).


  1. Get the latest GitHub release. You can also try to download the latest stable version if you want the cutting-edge updates (that may include some bugs).
  2. Start a shell in the downloaded folder an run: ./INSTALL.sh. You may need to run chmod +x ./INSTALL.sh first.

Other Systems

  1. Please follow: docs/install.md for setup instructions.
  2. Create connect.inc.php with an existing database user. Everything is explained at docs/info.html.

And you are ready to go!


LWT is a language learning web application. To learn a language, you need to practice, and we guide you in reading exercises.

First copy/paste any text you want to read. It can be raw text or an RSS feed.

Adding French text

Then, we parse the text. Unknown words will be displayed with different colors, just click them to see it in a dictionary.

Learning French text

Read as much as you want!

To make sure you memorize new words, you can take review exercises.

Reviewing French word

The difference with popular remembering software like Anki is that we keep track of the context to help you. By the way, we also ship an Anki exporter.


Full features list: docs/features.md

Features included from the official LWT software:

Features not in the official LWT

Full new features list: docs/newfeatures.md

Features that were added by the community:

Improvements compared to the official LWT


Complete explanation: docs/contribute.md

To contribute, you need to clone or fork this repository, and Composer. The composer package is at hugofara/lwt.

Run git clone https://github.com/HugoFara/lwt

Next, got to the lwt folder and use composer install --dev.

In short:

git clone https://github.com/HugoFara/lwt
cd lwt
composer install --dev



See also: docs/links.md


Under unlicense, view UNLICENSE.md, please look at http://unlicense.org/.

Let’s learn new languages!