A powerful, modern PDF reader designed for language learners.
Read native content, translate instantly context-aware, and build your vocabulary seamlessly using Spaced Repetition.
- Resume Anywhere: Automatically remembers your last page for every book.
- Distraction Free: Focus mode cleans up the interface for deep reading.
- Fast Rendering: Powered by optimized PDF.js for smooth scrolling.
- Click-to-Translate: Simply click any word to get its meaning instantly.
- Sentence Context: Translates whole sentences to help you grasp idioms and grammar.
- Powered by AI: Uses advanced translation models for high accuracy.
- One-Click Add: Save interesting words to your custom lists instantly.
- Spaced Repetition: Built-in flashcard system (Anki-style) ensures you review words right before you forget them.
- Smart Quizzes: Test yourself with multiple-choice questions derived from your actual reading context.
- Theming: Beautiful Dark and Light modes.
- Visualization: Track your daily progress with interactive charts.
- Responsive: Works great on any screen size.
| Reading Mode | Translation & Vocab |
|---|---|
![]() |
![]() |
| Vocabulary Dashboard | Flashcard Quiz |
|---|---|
![]() |
![]() |
- Download the latest
.debfile from the Releases Page. - Install:
sudo dpkg -i linguareader_*.deb - Launch LinguaReader from your applications menu.
(Note: An AppImage is also available if you prefer portable apps).
- Download the
.exeinstaller from Releases. - Run the installer.
- (If prompted by SmartScreen, click "More info" > "Run anyway" - this is normal for unsigned apps).
- Download the
.dmgfile from Releases. - Open the
.dmgand drag LinguaReader to your Applications folder. - (If blocked by Gatekeeper, right-click the app and select "Open", then confirm).
Want to contribute? Check out our Contributing Guidelines.
- Node.js (v18 or later)
- NPM
# 1. Clone the repository
git clone https://github.com/yusufdinc974/LinguaReader.git
cd LinguaReader
# 2. Install dependencies
npm install
# 3. Run development server (Vite + Electron)
npm run dev# Build for Linux
npm run build:linux
# Build for Windows
npm run build:win
# Build for macOS
npm run build:macLinguaReader keeps itself up to date automatically to ensure you always have the latest features and bug fixes.
- Automatic: The app checks for updates on startup.
- Seamless: If an update is found, it downloads in the background. You'll see a notification when it's ready to install.
- Restart: Simply restart the app to apply the update.
- Manual: Due to Apple's security policies, auto-updates are disabled.
- Notification: You will be notified when a new version is available.
- Action: Click the notification to open the Releases Page and download the latest
.dmgfile manually.
You can easily backup your data or import new word lists from other sources.
- Export Data: Generates a full JSON backup of all your word lists, words, progress, and settings.
- Import Data: Restores a previously exported backup file.
You can create your own word lists externally and import them into LinguaReader. This is perfect for bulk importing vocabulary.
Format:
Create a .json file with the following structure:
{
"listName": "My Custom List",
"listDescription": "Optional description for the list",
"words": [
{
"word": "bonjour",
"translation": "hello",
"source_language": "fr",
"target_language": "en"
},
{
"word": "merci",
"translation": "thank you"
}
]
}- Required Fields:
word,translation - Optional Fields:
listName,listDescription,source_language,target_language
Distributed under the MIT License. See LICENSE for more information.
Made with β€οΈ by Yusuf Dinc




