Vuizur / awesome-language-learning

A curated list of amazing projects that help you learn languages.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Awesome Language Learning

A curated list of amazing projects that help you learn languages.

Language Learning

Dictionaries

  • wikdict-gen - For 20 popular languages this project offers a downloadable dictionary in many formats for each language pair.
  • ebook-reader-dict - 10 monolingual dictionaries extracted from Wiktionary in several languages.
  • Wiktionary-Dictionaries - Dictionaries extracted from the English Wiktionary, supporting 300+ languages with definitions in English.
  • dictionariez - A browser extension to look up words on web pages.

Chatbots

  • ChatGPT - very good for practicing a wide variety for languages. Especially with the new version that can listen and reply to you in voice.

Learning With Texts (LinQ-like)

These applications allow you to read texts with an integrated system to look up words, mark them as known, and track your progress.

  • trunk - Very pretty UI, works pretty well (although the author says it's unstable) and supports 8 languages.
  • lwt - A self-hosted version (requires a bit of effort to get running) with a long history.
  • lute - A partial rewrite of lwt.

Reader Programs or extensions

  • tachiyomi - An manga reader that can fetch manga in many different languages.
  • KOReader - An open source ebook reader app that runs on many devices and has a lot of integrated dictionaries that can be downloaded with one click.
  • WordDumb - A program that edits ebooks so that simplified definitions are shown over complicated words. It also supports generating Kindle X-Ray.
  • fluentcards - A website that allows you to turn your kindle lookups into Anki flashcards

Anki (Flashcards)

  • AnkiDroid - The free Anki Android client for the most popular flashcard software - the desktop version is free as well.
  • vocabsieve - A program that allows to easily add sentences you read to Anki. Per flashcard the focus always lies on one word, with automatically fetched translations + pronunciation.
  • tatoeba-to-anki - A project that allows you to generate Anki decks with translations.
  • ankigenbot - A telegram bot that automatically creates Anki flashcards for words you send to it.
  • FSRS4Anki - An optimized spaced repetition algorithm that should minimize review time.
  • vocage - A spaced repetition program in the terminal

Video Players (or extensions)

  • mpvacious - Allows you to automatically create Anki flashcards out of the TV shows you are watching.
  • Immersive - A similar program to mpvacious.
  • voracious - A video player that has several features directed at language learning.
  • subadub - An extension for Netflix that allows downloading SRT and makes them copyable (so that you can look up the words).

Language Learning Games

  • LibreLingo - An open-source Duolingo-like game.
  • Game2Text - A program that makes it easy to look up words in Visual Novels.

Open Source Games (with a lot of text and translations)

  • Unciv - Awesome strategy game (Civ 5 remake) with very low resource requirements and great desktop + mobile support.
  • Shattered Pixel Dungeon - Very polished roguelike with pixel graphics and desktop + mobile support.
  • Widelands - A strategy game inspired by Settlers 2.
  • Pathos - A roguelike game with desktop + mobile support inspired by Nethack.
  • Cataclysm: Dark Days Ahead - A zombie roguelike game with a huge amount of content.
  • 0 A.D. - A strategy game inspired by Age Of Empires.
  • Battle of Wesnoth - Turn based strategy game with a huge amount of content.
  • OpenTTD - A simulation game based upon Transport Tycoon Deluxe.
  • Veloren - a voxel RPG inspired by Cube World and Minecraft.

Courses

  • Language Transfer - An app that offers completely free audio courses for several languages.

Chrome Extensions

  • word-discoverer - An extension that highlights rare words in texts.
  • pronounce - An extension that correctly pronounces words.

Developer Resources

Frequency Lists

  • wordfreq - A great Python library that contains frequency data for 44 languages.

Dictionary Data

  • wiktextract - A very high quality extracted JSON version of the English Wiktionary, containing over 8 million entries in 300+ languages with a huge amount of metadata.
  • xxyzz's Chinese wiktextract fork - A fork that has parsed the Chinese Wiktionary.
  • The KOReader dictionary list - Direct links to hundreds of free Stardict dictionaries.
  • pyglossary - Amazing library for the creation and conversion of dictionaries in a huge amount of formats.
  • wordnet-as-a-service - A REST interface for WordNet.
  • Proficiency - A library that extracts short definitions from kaikki data.
  • dictcc-stardict - Tool to convert the dict.cc dictionaries to stardict format.

Translation

Text To Speech

  • edge-tts - A Python library the uses the reverse engineered Text To Speech API of the Edge browser, producing extremely high quality output.
  • Coqui TTS - An entirely open source Python library running locally.

NLP

  • spaCy - A great library that can do everything: tokenization, lemmatization, named entity recognition, and much more.

Speech To Text

  • Whisper - OpenAI's amazing project that delivers extremely good results (except for low-resource languages).
  • whisper.cpp - A version of Whisper that runs much faster on the CPU, it even supports browser through WASM.

Image generation

You need illustrations for your project? Look no further.

  • Stable diffusion - An amazing open source generator that made huge waves on its release.
  • AUTOMATIC1111's webui - This is what you should install if you want to use Stable Diffusion locally.
  • Camenduru's notebooks - A simple one click way to use Stable Diffusion on Google Colab (if you don't have a good graphics card).
  • civitai - A website that contains all kinds of models, optimized for different aesthetics.

Other Great Projects

  • WantWords - A reverse dictionary that can find words based on the definitions you type (and works surprisingly well).

Useful Resources

Contributing

If you have ideas about what to add or see some description that is inaccurate or you want to add one, send a pull request or open an issue.

About

A curated list of amazing projects that help you learn languages.

License:Creative Commons Zero v1.0 Universal