Wekan
Open source kanban board application built with Meteor
Alternative to: trello
About
Versions (100)
v9.48
2026-06-17v9.48 2026-06-17 WeKan ® release
This release adds the following updates:
- Added non-experimental docker settings. Thanks to xet7.
and adds the following new features:
- Board Table view.
Part 1,
Part 2.
The board view menu (Swimlanes, Lists, Calendar, Gantt) gains a new “Table” entry
below Gantt. It shows every card of the current board in a table — Card, List,
Swimlane, Members, Labels and Due Date — using the same styling as the My Cards
table view (the
.my-cards-board-tableCSS classes). Whereas My Cards’ table spans all of the user’s cards across boards, this is the per-board equivalent showing all of the current board’s cards. The view is stored like the others as the user’sboard-view-tableboardView. It also has a search box and previous/next pagination styled like the Admin Panel / People page, and Excel-like column sorting: click the Card, List, Swimlane or Due Date header to sort by it, click again to reverse, with an arrow showing the active column and direction. Search, sort and pagination run client-side over the board’s already-loaded cards. Thanks to xet7 and Claude.
and fixes the following bugs:
- List scrollbar disappeared after resizing a list width:
Fixes #6386. When changing the width
of a list by dragging the resize handle between lists, the list’s vertical scrollbar
(used to scroll up and down through the cards in a list) disappeared. Cause: dragging
the resize handle sets an inline
--list-widthproperty on the list, which made the resize CSS rules forcedisplay: blockon the list permanently. That collapsed the flex-column layout so.list-bodywas no longer height-bounded and itsoverflow-y: autoscrollbar never appeared. Fixed by keeping the flex column layout (display: flex; flex-direction: column) instead ofdisplay: blockduring and after resize; the explicit inline width still pins the list width. Thanks to xet7 and Claude. - Login and register pages are now scrollable to the bottom of the form:
Tall authentication forms (many login methods, legal notice, language selector, etc.)
could overflow the viewport without a reliable way to scroll to all fields. The auth
pages render directly into
<body>, which already hasoverflow-y: auto, so the vertical scrollbar now appears whenever the form is taller than the viewport, with a real draggable thumb, placed on the right for LTR and on the left for RTL (since<body>inheritsdirectionfrom the htmldirattribute). Two<br>are added below the dialog so the bottom of the form scrolls fully into view. An earlier attempt forcedoverflow-y: scroll, which left a non-draggable empty scrollbar track in Chromium and no scrollbar at all in Firefox when the form fit the viewport; using the defaultoverflow-y: autoshows the scrollbar only when there is something to scroll. Thanks to xet7 and Claude. - Drag-to-scroll (dragscroll) now works on the All Boards, My Cards, Login and Register pages and in the board Lists view:
Dragging empty space to scroll already worked on the board Swimlanes view but not on
these pages. The dragscroll library scrolls whichever element carries the
dragscrollclass, and that element must be the actual scroll container. On All Boards, My Cards, Login and Register the page scroll container is<body>(the previousdragscrollclass onul.board-listonly scrolled in mobile view), so a small shared helper (client/lib/pageDragscroll.js) now toggles thedragscrollclass on<body>while those templates are mounted and callsdragscroll.reset(); the library has a dedicatedel == document.bodybranch for whole-page scrolling. In the board Lists view the.board-canvasonly receiveddragscrollwhen the board had swimlanes, so vertical drag-scroll failed on swimlane-less boards; the canvas now always carries the class. One-finger touch scrolling (client/lib/dragscrollTouch.js) covers these too. Thanks to xet7 and Claude.
Thanks to above GitHub users for their contributions and translators for their translations.