Development notes, guides, and announcements about WarmDesk.
A new clock-on-desk logo for the time-tracking module, and automatic logo swapping when the server runs in --mode=timetracking.
Delete and revoke flows get a red Delete button, guide PDF downloads include the release version in the filename, and the release helper keeps doc revisions in sync.
Download user and admin guide PDFs from the avatar menu, confirm before copying the previous week’s rows, and clearer undeclarable-time styling in the time-tracking grid.
Small refinements to the --mode=timetracking experience: Board tab removed, browser tab title updated, and a fix for mode detection after server switching in the desktop app.
Run a full WarmDesk instance and a time-tracking-only instance from a single config file, sharing the same SQLite database safely.
Select multiple weekdays per contract time slot, and run a stripped time-tracking-only server instance that shares a database with full WarmDesk.
All time slots on a contract now show their week preview, each in a distinct colour. Equal start/end times are treated as 24-hour coverage.
See all standby and after-hours rates across every customer at a glance — no more clicking through each contract to find what rate applies.
Full login and activity history per user in the admin panel, three security fixes, new Ansible modules for epics, sprints, and checklist templates, and a flexible modal width API.
Select a contract when adding time entries, fill the week automatically from contract slots, and see per-day duration totals right in the contract editor.
Trust your MFA device for a week or a month, let admins control the policy, fix undeclarable time alignment on the weekly sheet, and log in reliably behind an HTTP reverse proxy.
The WarmDesk desktop app now supports named profiles. Each profile has its own isolated login session, localStorage, and settings — so you can run separate instances for every customer without ever logging in and out.
WarmDesk now has a built-in help system. Click the ? button in the header for a page-level guide that follows you as you navigate, or click the ⓘ icons next to specific fields for a quick inline explanation — no documentation tab required.
Two new features land in WarmDesk: threaded replies inside helpdesk tickets, and an Epic layer for Scrum projects that groups cards into colour-coded milestones with burndown charts.
Apply reusable macros to tickets in one click, mark incoming email as spam to close and hide it, and enjoy a taller reply box with a Cancel button.
Incoming email creates helpdesk tickets automatically, replies thread onto existing tickets, Gmail and Office 365 authenticate via OAuth2, and the inbox updates live via WebSocket.
Board report consolidated into Time Tracking as a third tab, PDF page-number and undeclarable-time toggles, and a cleaner filter bar on HD screens.
WarmDesk now ships a complete helpdesk module: customer-scoped tickets with SLA policies, priority workflow, linked board cards, internal messages, and time tracking — all Ansible-automatable.
Comprehensive test armoring: JWT/bcrypt/TOTP verification, HTML email rendering, CORS parsing, WebSocket message types, date/time utilities, emoticons with gemoji, and CI integration via GitHub Actions.
Two Go standard-library CVE patches, a Content-Security-Policy tightening, keyboard access for board cards, and i18n-aware aria-labels across the board UI.
A broad security pass covering JWT token-type confusion, SVG upload XSS, webhook token hashing, SSRF prevention, and more — alongside a full WCAG 2.1 AA accessibility sweep across every view in the application.
Multi-day contract rate tiers, standby shift logging, spreadsheet-style cell selection and multi-paste, Ctrl+Z undo on Firefox, and XLSX slot breakdowns.
Named rate tiers on contracts, wall-clock start/end time per time-tracking cell, inline PDF slot breakdown, Ctrl+C/Ctrl+V cell copy, deleted card restore, per-user working hours, and time notation choice.
Every card now keeps a complete audit trail of who did what and when. A new Ansible module lets you manage card comments from your playbooks. Two bug fixes land alongside: a server crash on IPv6 avatar hosts and missing avatars in development mode.
Time-tracking projects now support an undeclarable minutes field. Reports, PDFs, and XLSX exports automatically subtract non-billable time. The PDF export also gains a per-customer page-break option.
Three small quality-of-life improvements to the time-tracking module: blank cells instead of 0:00, a clickable week label that opens a calendar date-picker with week numbers, and CSS flag badges that work everywhere.
WarmDesk v0.9.37 ships a comprehensive WCAG 2.1 AA accessibility pass — skip navigation, focus management, ARIA roles, keyboard shortcuts, and more.
How warmdesk-seed works, what it creates, and example command output—run it once for a full demo workspace.
The repository now ships a Postman Collection v2.1 export under docs/postman alongside the Bruno files — identical requests, usable from Postman on any platform.
The repository now ships a Bruno collection under docs/bruno — a practical, version-controlled way to call every major WarmDesk API from your desktop.
WarmDesk now shows CFD, Cycle Time, Lead Time, and Throughput charts on all Kanban projects — no sprints required.
Every WarmDesk release artifact now ships with a detached GPG signature so you can verify downloads before installing.
Camera and microphone support is fully working in the WarmDesk Linux AppImage, and group video is now available in all group conversations.
WarmDesk now supports group video calls in direct-message group conversations.
A deep dive into WarmDesk — what it is, why it exists, and how it was built almost entirely with AI assistance.