Installation & Local Setup
Clone and install
git clone https://github.com/open-lingua/ielts-mastery-hub.git
cd ielts-mastery-hub
npm install
Directory layout
/
├── src/
│ ├── core/ # Rust / Tauri 2 backend
│ └── ui/ # React / TypeScript frontend
└── website/ # Docusaurus documentation site (this site)
See Full Technology Stack Reference and Folder Structure for more detail.
Environment variables
AI grading needs no environment variables — credentials for the Writing module's AI
grading feature are configured at runtime from Admin → AI Configurations
(src/ui/pages/admin/AiConfigurations.tsx), stored encrypted in the local SQLite database
rather than in .env/VITE_-prefixed variables (see
Writing Module & AI Grading). If no provider
is configured/active, grade_writing throws a clear error:
No AI provider is configured
Backend-only secrets (if any are introduced) belong in src/core/.env and must never be exposed to the frontend — see CONTRIBUTING.md.
First run
- Complete Prerequisites.
npm installat the repo root.- (Optional) Once the app is running, configure an AI provider from Admin → AI Configurations to enable Writing AI grading — not required to use Reading/Listening.
- Continue to Running the App in Development.
Troubleshooting missing native dependencies
| Symptom | Likely cause | Fix |
|---|---|---|
| App window fails to open on Windows | WebView2 not installed | Install the Evergreen Bootstrapper |
Build fails referencing webkit2gtk on Linux | Missing native packages | Install webkit2gtk/libayatana-appindicator for your distro |
| Rust compiler errors about missing Xcode tools (macOS) | Command Line Tools not installed | Run xcode-select --install |
cargo/rustc not found | Rust toolchain not installed | Install via rustup.rs |
See also Troubleshooting Common Issues for runtime issues after the app is running.