v3.1.0
cloudflare/pingorav3.1.0Sep 25, 2026by chamikaJ
Upgrading?
AI Summary
This release marks a major transition to a 100% AGPLv3 open-source model for the Worklenz platform and introduces a modular addon architecture to support custom enterprise workflows and integrations.
Key Highlights
- 100% AGPLv3 Open Source model with commercial licensing removed
- Modular Addon Engine allowing self-contained plugins with independent routes
- Isolated addon database migrations to prevent schema conflicts
- Frontend UI Extension Slots for navigation and project settings
New Features
- Modular Addon Engine & SDK Architecture
- Backend Addon SDK for database access and utilities
- Frontend UI Extension Slots (Navigation, Project Settings, Project List)
- Cross-platform compatibility improvements
- Robust migration runner with PostgreSQL constraint guards
Full Release Notes
# 🚀 Worklenz Release: 100% AGPLv3 Open Source
We are thrilled to announce a major milestone for Worklenz! With this release, the entire core platform and client portal have transitioned to a **100% Open Source model under the GNU Affero General Public License v3.0 (AGPLv3)**, alongside the debut of our new **Modular Addon Architecture**.
---
## 🌟 Highlights
### 🔓 100% AGPLv3 Open Source
- **Commercial Licensing Removed**: We have retired the dual-licensing and commercial license restrictions across the repository, backend extensions, and the Client Portal.
- **Freedom to Self-Host**: All features across the core platform are now unified under **GNU AGPLv3**, providing self-hosters and organizations complete freedom to inspect, customize, and deploy Worklenz without licensing barriers.
---
## 🧩 New Features
### 🔌 Modular Addon Engine & SDK Architecture
To allow custom enterprise workflows, bespoke client integrations, and private features to coexist cleanly alongside the open-source core, we have introduced a powerful, decoupled **Addon Engine**:
- **Self-Contained Addons (`/addons/<addon-id>`)**:
- Independent directories containing their own backend routes, database migrations, frontend UI components, and state management.
- Enabled simply by declaring them in environment variables: `ENABLED_ADDONS=addon-a,addon-b`.
- **Backend Addon SDK (`@worklenz/addon-sdk`)**:
- Exposes core utilities, database access, base controllers, notifications, and validators to addons.
- Reuses the core backend's compiled modules and PostgreSQL connection pool, ensuring optimal resource usage with zero duplicate connection overhead.
- Dynamically mounts addon routers under `/api/v1/addons/<addon-id>`.
- **Isolated Addon Database Migrations**:
- Run migrations for all enabled addons via `npm run migrate:addons`.
- Each addon tracks its schema in a dedicated tracking table (e.g. `pgmigrations_<addon_id>`), guaranteeing zero interference with the core database schema.
- Built-in collision detection, deduplication, and pre-flight validation prevent schema conflicts.
- **Frontend UI Extension Slots**:
- Addons can inject UI components into established platform slots without modifying core code:
- **Navigation Bar**: Add custom menu entries (`navigationItems`).
- **Project Settings**: Register dedicated configuration tabs (`projectSettingsTabs`).
- **Project List**: Inject customized data columns (`projectListColumns`).
- **Routing & State**: Dynamically register React Router routes and Redux slices.
- Built-in collision guards protect core Redux slices (`auth`, `user`, etc.) from being overwritten.
---
## 🛠️ Improvements & Stability Fixes
- **Cross-Platform Compatibility**: Replaced hardcoded POSIX path delimiters with platform-native separators, ensuring seamless addon loading on Windows, Linux, and macOS.
- **Robust Migration Runner**:
- Scoped PostgreSQL constraint guards (`conrelid`) to specific tables, ensuring idempotent migration execution across fresh and existing databases.
- Enhanced migration runners to properly fail on non-zero statuses, process signals, and corrupted manifests.
- **Vite Plugin Integration**:
- Vite addons plugin now honors environment variables loaded via `.env` files (`VITE_ENABLED_ADDONS`, custom branding titles, and favicons).
- Gracefully guards against incomplete or unmounted extension slot components.
- **Docker & Self-Hosting Enhancements**:
- Updated environment templates (`.env.example`, `worklenz-backend/.env.template`, `worklenz-frontend/.env.example`) with addon engine documentation.
- Streamlined container bootstrap scripts and documentation in `docs/SELF_HOSTING.md`.
---
## ⚙️ Configuration & Quick Start
### Enabling Installed Addons
In your `.env` file:
```env
# Comma-separated list of enabled addon directory IDs
ENABLED_ADDONS=wip-sheet,crm-handoffs
# For frontend-only builds
VITE_ENABLED_ADDONS=wip-sheet,crm-handoffs
```
### Running Addon Migrations
```bash
cd worklenz-backend
npm run migrate:addons
```
---
## 🤝 Contributing & Community
With the full AGPLv3 transition, community contributions, bug reports, and addon development are more welcome than ever! Check out our updated [README](https://github.com/Worklenz/worklenz/blob/main/README.md) and [`addons/README.md`](https://github.com/Worklenz/worklenz/blob/main/addons/README.md) to get involved.Related Repositories
A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.
Build smaller, faster, and more secure desktop and mobile applications with a web frontend.
π RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.
Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one