2k stars · not shown on the GitHub page · no GitHub releases; 14,304 commits on main; paraglide-js v2.1.0 on npm (~54k weekly downloads) · Track this in Scout
Compiler-based i18n (Paraglide JS) plus a web editor — the no-server alternative to Tolgee.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A set of tools around a shared file format for translations. The best known part is Paraglide JS, which reads your translation files and writes a small typed function for each message. There is also a web editor for people who translate but do not write code.
What it is good for. Anybody running a site in two languages. The compiled approach means a visitor downloads only their own language, so the page stays small, and a missing translation is caught at build time rather than when a reader finds it.
A marketing site that runs in English and Russian faces exactly this split. This is the tool that keeps the two versions honest.
A warning about the licence. Like #7, the repository has no licence file at its root. The Paraglide JS package on npm declares MIT. This is a large project with an active company behind it and roughly fifty thousand downloads a week, so a missing file at the root is much more likely to be an oversight in a big folder of many packages than a deliberate restriction. Read the individual package's licence field before you commit to it.
- The visitor downloads one language, not all of them.
- A missing translation becomes a build error instead of a blank space on the page.
- There is a separate web editor, so a translator never has to open your code.
- No licence file at the repository root. The npm package says MIT.
- It publishes no releases on GitHub at all, so you have to follow the npm package to know what changed. A missing release is a publishing habit, not a sign of trouble: the last code landed on 7 September 2026.
- The project has renamed and rearranged its parts more than once. Older guides on the internet describe tools that no longer exist.
npx @inlang/paraglide-js@latest init # answer the questions, then: npm run build

