I originally made this plugin for myself to work on my projects — if anyone likes it, I'd be glad I could help. If you have any suggestions or questions, feel free to ask. Good luck to everyone, and may order be with you! ![]()
JopJirix — Kanban Board & Wiki for Joplin**
JopJirix is an independent project. It is not affiliated with Jira® or Atlassian.
JopJirix turns Joplin into a full‑fledged project tracker: agile‑style kanban cards plus a built‑in Wiki for project documentation. All data lives in native Joplin entities (notes, tags, plugin settings), so sync and backups keep working.
Repository
Screenshots
Features
Board
- Cards with auto‑generated keys per project tag:
2COF-1,2COF-2… (tag and start number are configurable; the field stays editable). - Statuses, assignees with roles and colors, initials avatars.
- Dates: created / start / due; overdue is highlighted.
- Drag & drop of cards between and inside card holders.
- Card holders (columns): custom name, color and status; drag columns by the
⠿handle; a “do not change card status” mode. - Optional creation of a Joplin note for a card, with the task tag attached.
Wiki
- Pages are Joplin notes with a configurable tag.
- Subpage hierarchy (parent → children), shown as a tree in the list.
- Built‑in markdown editor with “
Save” and “
Preview”. - Page tags: add/remove; the tag from settings is always present.
- Robust writing with fact‑checking and fallback payloads — works on any Joplin build (including Snap/AppImage).
- A page registry in plugin state: created pages never disappear from the list; older pages are recovered by a one‑time background scan.
Localization
- 9 languages: EN, RU, DE, ES, PT, FR, SR, ZH, JA + auto‑detection of the Joplin language.
- The “Interface language” setting takes priority, applies immediately and does not affect Joplin itself.
- Built‑in translation editor: an “English text | key | translation” table.
- Sharing translations via the
jopjirix-locales.jsonfile. - The translation is incomplete. You can add and fix translations yourself.
Requirements
- Joplin Desktop ≥ 2.6 (Linux / Windows / macOS, including Snap).
- To build from source: Node.js ≥ 16 and npm.
Installing a ready .jpl
- Settings → Plugins →
→ “Install from file…” → pick plugin.joplin.jopjirix-v*.jpl. - Restart Joplin.
- The board opens in the side panel. Also available via Tools → JopJirix Board and the Ctrl/Cmd+Shift+J hotkey.
Building from source
npm install
npm run dist
- Compiled plugin →
dist/; the.jplarchive → project root. - Dev mode: copy the contents of
dist/to~/.config/joplin-desktop/plugins-dev/plugin.joplin.jopjirix/and restart Joplin.
Settings (the “Settings” tab)
- Project: name, tag/key, card start number, description.
- Tag for Wiki pages.
- Members: name, role, color.
- Interface language (applies immediately).
- Translations: pick a language → fill the table → “Save translations”.
Usage
Cards
- “+ Card”: tag (pre‑filled from project settings), title, holder, status, dates, assignee; a preview of the future key.
- On a card: click — edit; ✎ — editor;
— delete (optionally with the linked note);
— open the linked note.
Card holders
- “+ Add card holder”;
— name/color/status; ⠿ — drag; “Delete” — with confirmation.
Wiki
- “+ New page”, “+ Subpage”; “
Save”; “
Preview”; “
In Joplin”; the tags block at the bottom of the page.
Sharing translations
Translations are saved to:
<profile>/plugins-data/plugin.joplin.jopjirix/jopjirix-locales.json
Send the file to a colleague — they place it into the same folder of their Joplin and restart the app.
Project structure
src/
index.ts — plugin start, menu, commands, toolbar button
api.ts — Joplin API access + local enums
store.ts — board state, settings, Wiki registry, i18n storage
i18n.ts — language dictionaries (EN/RU + stubs)
messages.ts — panel ↔ plugin messaging
notes.ts — robust note/tag operations
ui.ts — panel HTML/CSS
webview.js — panel UI logic
panel.ts, types.ts, defaults.ts, util.ts
tools/build-jpl.js — .jpl packaging (tar)
Known limitations
- Joplin menu and command labels are translated after an app restart.
- On some Joplin builds (Snap) parts of the data API behave non‑standardly — the plugin automatically uses fallback payloads, fact‑checking and self‑healing of links.
License
MIT

