Skip to content

About

This is the official "Learning with Texts" (LWT), a web app for language learning.

Resources

Stars

0 stars

Watchers

0 watching

Forks

 
 

Repository files navigation

Learning with Texts Desktop

Learning with Texts (LWT) is a local-first application for reading, vocabulary tracking, spaced review, and language-learning library management. Your library stays on your computer, and the main learning workflow is available offline.

Install

Protected version tags produce Windows MSI/NSIS installers, Linux DEB and AppImage packages, and an Arch Linux package. Windows installers are unsigned and may display an unknown-publisher warning. Always download from the official release and verify the supplied SHA-256 manifest. See Release Builds for installation and verification details.

Application data stays in the operating system's per-user application-data directory. Create a portable JSON backup from Backup before upgrades or moving to another computer.

Audio can be imported from a local file or generated while saving a text with Edge TTS. Generation requires an internet connection, sends the text to Microsoft's online speech service, and stores the resulting MP3 in the local library. Imported and previously generated audio remains available offline.

Develop

Install Node.js 20.19 or newer, Rust, and the platform dependencies listed by Tauri. Then run:

npm ci
npm run check
npm test
npm run dev

Use npm run build for native installers, npm run package:arch for the Arch package, and npm run test:e2e for the packaged Linux workflow. Additional requirements are documented in End-to-End Tests. Release candidates should also follow the complete QA Test Scenarios.

Repository Layout

  • src/: Rust commands, persistence, parsing, and schema orchestration.
  • migrations/: ordered SQLite migrations embedded in the native binary.
  • web/: TypeScript domain contracts, gateways, UI modules, and styles.
  • tests/ and e2e/: fixtures and packaged-application tests.
  • scripts/ and packaging/: release validation and native package recipes.
  • docs/: architecture, release, security, QA, and operational guidance.

The WebView receives typed, scoped commands and never raw SQL, shell access, or unrestricted filesystem access. See Architecture and Legacy Import for implementation and data-transfer details.

This project retains the upstream LICENSE and UNLICENSE.txt.

About

This is the official "Learning with Texts" (LWT), a web app for language learning.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages