Daniel Hiller 9069b24cfb chore: Add a locale completeness check
An incomplete locale falls back to English at runtime, so a gap breaks nothing
and nobody notices it on their own. 2.2.1 shipped fifty-six user-facing strings
that existed only in English and German, and it took someone looking for
something else to find them. `npm run client:locales:check` compares every
locale against the reference and exits non-zero when one is behind.

It compares `login.js` and `core.js` separately and never merges them.
`login.js` is the embedded bundle and is all that exists until a session is
established, so a key present only in `core.js` is still missing from every
screen shown before login — the two-factor challenge among them. Merging the
two hides exactly that, which is how the six strings of the challenge stayed
English in thirty-three languages.

Keys are compared on their base name, with the CLDR plural category stripped,
because how many categories a language needs is a property of that language:
English has two, Japanese one, Arabic six. Comparing the suffixed names would
have demanded an English `_one` from Japanese, where i18next never reads it.
Each plural key is then checked against the categories the language itself
declares, through the same Intl.PluralRules that i18next resolves with — a
missing category falls back to `_other` silently, and Russian `few` and `many`
are reachable with counts a user really sees.

It is deliberately not part of `lint`: a pull request that adds a string is
expected to leave the other locales behind for a while, and a check that fails
every such request would only be switched off. This one belongs before a
release.
2026-09-08 19:54:27 +02:00
2026-08-07 16:36:02 +02:00
2025-05-10 02:09:06 +02:00
2026-08-09 22:36:27 +02:00
2020-05-29 21:46:08 +05:00
2025-11-28 17:45:31 +01:00
2025-05-10 02:09:06 +02:00
2025-05-10 02:09:06 +02:00
2026-08-07 16:17:24 +02:00
2026-08-09 22:36:27 +02:00
2025-05-10 02:09:06 +02:00

Logo

PLANKA

Project mastering driven by fun

Version Docker Pulls Contributors Chat

Install · Demo · Docs · API · Cloud · Pro version

Demo


PLANKA Pro

When the whole team runs on PLANKA.

Phones and tablets · five themes · a dashboard across every project · calendar, timeline and map views · cards on more than one board · templates · guest roles · SSO · PDF export. Self-hosted exactly as you host it now, supported by the people who build it.

Try Pro free for 30 days Features and pricing

Personal dashboard across every project A board on a phone Theme picker Timeline view
Community Pro
Boards, lists, cards, real-time collaboration ✓ ✓
Markdown, attachments, comments, custom fields ✓ ✓
Stopwatch and due dates on cards ✓ ✓
Notifications through 100+ providers ✓ ✓
Webhooks and a documented REST API ✓ ✓
Two-factor authentication ✓ ✓
Self-hosted, your database, your backups ✓ ✓
Free to self-host ✓ —
Phones and tablets, five themes, accent color — ✓
Calendar, timeline, map and media views — ✓
Recurring cards, card and board templates — ✓
One card on more than one board — ✓
Guest roles, SSO (OIDC) — ✓
PDF and HTML export — ✓
Support from the developers, no ticket queue — ✓

Pro upgrades an existing Community installation in place — your database, your volume, your data. It is a real migration rather than a new image: Pro adds a Valkey service and a one-off schema promote. The promote accepts only certain Community releases as a starting point — currently 2.1.x and 2.2.x — and from any other version it stops without changing anything. The upgrade is one-way — there is no downgrade back to Community — so take a backup first, or try it on a copy. The step-by-step guide is in the customer center once you have a key, and lists the releases the promote accepts.


Key Features

  • Collaborative Kanban Boards: Create projects, boards, lists, cards, and manage tasks with an intuitive drag-and-drop interface
  • Real-Time Updates: Instant syncing across all users, no refresh needed
  • Rich Markdown Support: Write beautifully formatted card descriptions with a powerful markdown editor
  • Flexible Notifications: Get alerts through 100+ providers, fully customizable to your workflow
  • Multilingual & Easy to Translate: Full internationalization support for a global audience

How to Deploy

PLANKA is easy to install using multiple methods - learn more in the installation guide.

For configuration and environment settings, see the configuration section.

For hosted plans and pricing, see our website.

Notes App

A testing version of the Notes app is now available on multiple platforms:

  • iOS: Join the TestFlight to try the app
  • Windows & Android: Download the app here

Contact

For any security issues, please do not create a public issue on GitHub - instead, report it privately by emailing security@planka.group.

Note: We do NOT offer any public support via email, please use GitHub.

Join our community: Get help, share ideas, or contribute on our Discord server.

License

PLANKA is fair-code distributed under the Fair Use License and PLANKA Pro/Enterprise License.

  • Source Available: The source code is always visible
  • Self-Hostable: Deploy and host it anywhere
  • Extensible: Customize with your own functionality
  • Enterprise Licenses: Available for additional features and support

For more details, check the License Guide.

Contributing

Found a bug or have a feature request? Check out our Contributing Guide to get started.

For setting up the project locally, see the development section.

Thanks to all our contributors!

Contributors

S
Description
Project mastering driven by fun - Collaborative Kanban boards, real-time updates, rich markdown, 100+ notification providers. Self-hosted and free to deploy.
Readme
29 MiB
Languages
JavaScript 95.2%
SCSS 4.3%
Shell 0.3%