<?xml version="1.0" encoding="UTF-8"?><rss version="2.0">
<channel>
<description>A feed of the latest and greatest ForgeBox package entries</description>
<link>https://www.forgebox.io/</link>
<title>ForgeBox RSS Feed - Type: - Sorting:recent</title>
<copyright>Ortus Solutions, Corp (www.ortussolutions.com)</copyright>
<docs>http://www.rssboard.org/rss-specification</docs>
<generator>FeedGenerator</generator>
<lastBuildDate>Fri, 30 Oct 2026 02:29:13 GMT</lastBuildDate>
<pubDate>Fri, 30 Oct 2026 02:29:13 GMT</pubDate>
<item>
<title>Lucee Light CF Engine - v7.1.1+17</title>
<description>Lucee Light WAR engine for CommandBox servers.</description>
<link>https://www.forgebox.io/view/lucee-light</link>
<pubDate>Mon, 19 Oct 2026 08:07:21 GMT</pubDate>
<category>cf-engines</category>
<guid isPermaLink="false">https://www.forgebox.io/view/lucee-light</guid>
</item>
<item>
<title>Lucee CF Engine - v7.1.1+17</title>
<description>Lucee WAR engine for CommandBox servers.</description>
<link>https://www.forgebox.io/view/lucee</link>
<pubDate>Mon, 19 Oct 2026 08:06:44 GMT</pubDate>
<category>cf-engines</category>
<guid isPermaLink="false">https://www.forgebox.io/view/lucee</guid>
</item>
<item>
<title>BoxLang CommandBox Module - v7.0.24-rc.2</title>
<description>CommandBox CLI for BoxLang</description>
<link>https://www.forgebox.io/view/bx-cli</link>
<pubDate>Fri, 30 Oct 2026 00:11:37 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-cli</guid>
</item>
<item>
<title>commandbox-release - v3.8.0</title>
<description>Release CFML modules and web apps with CommandBox. Check, test, build, and publish to ForgeBox or GitHub.</description>
<link>https://www.forgebox.io/view/commandbox-release</link>
<pubDate>Thu, 29 Oct 2026 23:42:38 GMT</pubDate>
<category>commandbox-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/commandbox-release</guid>
</item>
<item>
<title>errorAlerts - v2.9.0</title>
<description>Throttled error notifications for ColdBox: first-N + digest emails from a self-registering LogBox appender, with swappable notifiers.</description>
<link>https://www.forgebox.io/view/erroralerts</link>
<pubDate>Thu, 29 Oct 2026 20:28:08 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/erroralerts</guid>
</item>
<item>
<title>cbreinit-confirm - v1.0.0</title>
<description>Sends a response header from the request that reinitialised a ColdBox app, so a deploy tool can confirm fwreinit really reloaded it.</description>
<link>https://www.forgebox.io/view/cbreinit-confirm</link>
<pubDate>Thu, 29 Oct 2026 19:59:20 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbreinit-confirm</guid>
</item>
<item>
<title>BoxLang CommandBox Engine - v1.18.6+62</title>
<description>The CommandBox Engine for BoxLang</description>
<link>https://www.forgebox.io/view/boxlang</link>
<pubDate>Fri, 02 Oct 2026 14:16:47 GMT</pubDate>
<category>cf-engines</category>
<guid isPermaLink="false">https://www.forgebox.io/view/boxlang</guid>
</item>
<item>
<title>cfRequestGuard - v0.2.3</title>
<description>Framework-independent bot, scraper and abuse defence for CFML (Lucee 6, BoxLang 1.x): ordered rules, verified crawlers, JS challenge, progressive rate limits, strike bans.</description>
<link>https://www.forgebox.io/view/cfrequestguard</link>
<pubDate>Thu, 29 Oct 2026 19:34:07 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cfrequestguard</guid>
</item>
<item>
<title>ESAPI - v1.12.0+16</title>
<description>Module template for BoxLang modules</description>
<link>https://www.forgebox.io/view/bx-esapi</link>
<pubDate>Thu, 29 Oct 2026 19:01:25 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-esapi</guid>
</item>
<item>
<title>bxLens - v1.0.0-snapshot</title>
<description>BoxLang debug bar and console: timeline, queries, templates, cache, executors, tasks, threads and more</description>
<link>https://www.forgebox.io/view/bx-lens</link>
<pubDate>Thu, 29 Oct 2026 14:25:31 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-lens</guid>
</item>
<item>
<title>Masa CMS - v7.6.2</title>
<description>Masa CMS is an open source content management system for CFML.</description>
<link>https://www.forgebox.io/view/MasaCMS</link>
<pubDate>Thu, 29 Oct 2026 13:23:24 GMT</pubDate>
<category>cms</category>
<guid isPermaLink="false">https://www.forgebox.io/view/MasaCMS</guid>
</item>
<item>
<title>Preside Extension: Alternate Admin Theme - v1.5.8+0000762</title>
<description>The Alternate Admin Theme extension provides a refresh to the original Preside core admin layout and styling, and also adds customisation options.</description>
<link>https://www.forgebox.io/view/preside-ext-alt-admin-theme</link>
<pubDate>Wed, 21 Oct 2026 17:10:54 GMT</pubDate>
<category>preside-extensions</category>
<guid isPermaLink="false">https://www.forgebox.io/view/preside-ext-alt-admin-theme</guid>
</item>
<item>
<title>commandbox-deploybot - v0.4.0</title>
<description>Push a site's production .env to your DeployBot server from CommandBox. Check keys locally, preview the diff, and push.</description>
<link>https://www.forgebox.io/view/commandbox-deploybot</link>
<pubDate>Thu, 29 Oct 2026 03:23:41 GMT</pubDate>
<category>commandbox-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/commandbox-deploybot</guid>
</item>
<item>
<title>ColdBox File Storages - v1.2.1+14</title>
<description>This module allows you to abstract filesystems by leveraging a fluent storage API</description>
<link>https://www.forgebox.io/view/cbfs</link>
<pubDate>Wed, 28 Oct 2026 21:43:54 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbfs</guid>
</item>
<item>
<title>Preside - v10.31.2+0011850</title>
<description>The Preside platform by Pixl8 Interactive</description>
<link>https://www.forgebox.io/view/presidecms</link>
<pubDate>Wed, 28 Oct 2026 12:27:39 GMT</pubDate>
<category>cms</category>
<guid isPermaLink="false">https://www.forgebox.io/view/presidecms</guid>
</item>
<item>
<title>BoxLang ORM - v1.7.2+35</title>
<description>ORM for BoxLang</description>
<link>https://www.forgebox.io/view/bx-orm</link>
<pubDate>Tue, 20 Oct 2026 14:21:16 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-orm</guid>
</item>
<item>
<title>BxAgents - v1.0.0-snapshot</title>
<description>Conventions-based AI agent framework for BoxLang, built on ColdBox and BX AI</description>
<link>https://www.forgebox.io/view/bx-agents</link>
<pubDate>Tue, 27 Oct 2026 22:50:50 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-agents</guid>
</item>
<item>
<title>BoxLang MCP Server - v1.7.0+10</title>
<description>The BoxLang MCP Server module for web applications</description>
<link>https://www.forgebox.io/view/bx-mcp</link>
<pubDate>Tue, 27 Oct 2026 21:39:16 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-mcp</guid>
</item>
<item>
<title>PresideCMS Extension: Preside JS Modern - v1.0.11+0000037</title>
<description># Preside JS Modern
A Preside CMS extension that replaces legacy jQuery and Bootstrap JavaScript with modern, lightweight alternatives while maintaining full API compatibility.
## Overview
Preside's admin interface relies on jQuery 2.x and Bootstrap 3.x. This extension provides drop-in replacements using Preside's Sticker asset management system:
| Legacy Library | Replacement | Description |
|----------------|-------------|-------------|
| jQuery 2.2.5 | **JQNext** | jQuery 2.x API compatible, modern ES6+ internals |
| Bootstrap 3 JS | **SandalJS** | Bootstrap 3 API compatible, powered by JQNext |
## How It Works
Preside uses Sticker for asset management where each asset has a unique ID. This extension registers assets using the **same IDs** as core Preside:
- `/js/admin/lib/jquery/` → JQNext (replaces jQuery)
- `/js/admin/lib/bootstrap/` → SandalJS (replaces Bootstrap JS)
When loaded, Sticker's override mechanism ensures the modern libraries are used throughout the admin interface. All existing Preside JavaScript continues to work without modification.
## Benefits
### Smaller Bundle Size
Both libraries leverage native browser APIs, resulting in significantly smaller file sizes.
### Modern Browser APIs
- **Web Animation API** - Smooth 60fps animations
- **Fetch API** - Modern AJAX with Promises
- **WeakMap** - Memory-efficient data storage
- **Intersection Observer** - Efficient scroll-based features
### Full Compatibility
- jQuery 2.x API - All methods, selectors, and patterns work unchanged
- jQuery UI 1.11.x - Full widget factory support
- Bootstrap 3 components - Modal, Dropdown, Tooltip, Collapse, etc.
- Preside-specific - `window.presideJQuery` automatically set
### Future-Proof
No legacy IE polyfills, ES6+ classes, native Promises, tree-shakeable modules.
## Modern + Legacy: Best of Both Worlds
JQNext enables Preside developers to gradually adopt modern JavaScript patterns while maintaining full compatibility with existing jQuery-based code. This means you can:
**Mix Modern and Legacy Patterns**
```javascript
// Legacy jQuery patterns continue to work
$('.widget').on('click', function() {
$(this).fadeIn();
});
// Modern patterns work alongside
$('.widget').on('click', async function() {
const response = await fetch('/api/data');
const data = await response.json();
$(this).html(data.content);
});
```
**Use Native Promises with jQuery AJAX**
```javascript
// JQNext's $.ajax() returns a native Promise-compatible object
const data = await $.getJSON('/api/endpoint');
// Or use Fetch directly alongside jQuery DOM manipulation
const response = await fetch('/api/endpoint');
$('.container').html(await response.text());
```
**Leverage Modern APIs in Existing Code**
```javascript
// JQNext uses WeakMap internally, preventing memory leaks in long-running SPAs
$('.dynamic-content').data('instance', complexObject);
// No need to manually clean up - garbage collected automatically
// Animation uses Web Animation API for better performance
$('.element').animate({ opacity: 0.5 }, 300);
// Runs on compositor thread, won't block main thread
```
**Incremental Migration Path**
- Start with this extension as a drop-in replacement
- Write new code using modern JavaScript patterns
- Existing Preside admin customisations continue to work
- Gradually refactor legacy code as time permits
## Installation
```bash
box install preside-ext-jsmodern
```
## Requirements
- Preside CMS 10.x or later
- Modern browsers (Chrome 60+, Firefox 55+, Safari 12+, Edge 79+)
## Included Libraries
### JQNext
Full jQuery 2.x API compatibility:
- Selectors including `:visible`, `:hidden`, `:eq(n)`, etc.
- DOM traversal and manipulation
- Events with delegation and namespacing
- Effects: `fadeIn()`, `slideUp()`, `animate()`, etc.
- AJAX: `$.ajax()`, `$.get()`, `$.post()`
- Utilities: `$.extend()`, `$.Deferred()`, etc.
- jQuery UI widget factory support
### SandalJS
Bootstrap 3 JavaScript components:
- Modal, Dropdown, Tooltip, Popover
- Tab, Collapse, Alert, Button
- Carousel, Scrollspy, Affix
- Full data-attribute API support
## Browser Support
Modern browsers with ES6+ support. Legacy IE is intentionally not supported.
## License
MIT
## Credits
- **JQNext** by Pixl8 Group Limited
https://github.com/pixl8/JQNext
- **SandalJS** by Pixl8 Group Limited
https://github.com/pixl8/SandalJS
- Built for [Preside CMS](https://www.preside.org/)</description>
<link>https://www.forgebox.io/view/preside-ext-jsmodern</link>
<pubDate>Tue, 27 Oct 2026 17:41:10 GMT</pubDate>
<category>preside-extensions</category>
<guid isPermaLink="false">https://www.forgebox.io/view/preside-ext-jsmodern</guid>
</item>
<item>
<title>BoxLang Fluent Image Library - v1.13.0+27</title>
<description>Powerful and fluent image manipulation module for BoxLang with extensive built-in functions</description>
<link>https://www.forgebox.io/view/bx-image</link>
<pubDate>Mon, 19 Oct 2026 21:57:30 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-image</guid>
</item>
<item>
<title>LogBox Logging Library - v8.3.0+36</title>
<description>LogBox is an enterprise ColdFusion logging library designed to give you flexibility and scalability.</description>
<link>https://www.forgebox.io/view/logbox</link>
<pubDate>Tue, 13 Oct 2026 12:07:33 GMT</pubDate>
<category>logging</category>
<guid isPermaLink="false">https://www.forgebox.io/view/logbox</guid>
</item>
<item>
<title>WireBox DI/AOP - v8.3.0+36</title>
<description>AOP and Dependency Injection Framework</description>
<link>https://www.forgebox.io/view/wirebox</link>
<pubDate>Tue, 13 Oct 2026 12:07:22 GMT</pubDate>
<category>di</category>
<guid isPermaLink="false">https://www.forgebox.io/view/wirebox</guid>
</item>
<item>
<title>CacheBox - v8.3.0+36</title>
<description>CacheBox is an enterprise caching engine, aggregator and API for ColdFusion applications.</description>
<link>https://www.forgebox.io/view/cachebox</link>
<pubDate>Tue, 13 Oct 2026 12:07:11 GMT</pubDate>
<category>caching</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cachebox</guid>
</item>
<item>
<title>ColdBox Platform For BoxLang - v8.3.0+36</title>
<description>A conventions based HMVC development framework</description>
<link>https://www.forgebox.io/view/bx-coldbox</link>
<pubDate>Tue, 13 Oct 2026 12:06:59 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-coldbox</guid>
</item>
<item>
<title>ColdBox Platform - v8.3.0+36</title>
<description>A conventions based HMVC development framework</description>
<link>https://www.forgebox.io/view/coldbox</link>
<pubDate>Tue, 13 Oct 2026 12:06:47 GMT</pubDate>
<category>mvc</category>
<guid isPermaLink="false">https://www.forgebox.io/view/coldbox</guid>
</item>
<item>
<title>Lucee MariaDB extension - v3.5.11</title>
<description>Type 4 JDBC driver for MariaDB</description>
<link>https://www.forgebox.io/view/F2FA5DB2-0C27-499C-B1171D2D812FDAF9</link>
<pubDate>Tue, 27 Oct 2026 11:23:36 GMT</pubDate>
<category>lucee-extensions</category>
<guid isPermaLink="false">https://www.forgebox.io/view/F2FA5DB2-0C27-499C-B1171D2D812FDAF9</guid>
</item>
<item>
<title>TestBox - v7.2.2+23</title>
<description>A BDD and xUnit testing framework with Mocking Goodness</description>
<link>https://www.forgebox.io/view/testbox</link>
<pubDate>Fri, 16 Oct 2026 14:26:18 GMT</pubDate>
<category>testing</category>
<guid isPermaLink="false">https://www.forgebox.io/view/testbox</guid>
</item>
<item>
<title>orm4cf - v5.2.1+5</title>
<description>Enhances the Hibernate ORM on CFML Engines with tons of utilities.</description>
<link>https://www.forgebox.io/view/orm4cf</link>
<pubDate>Mon, 26 Oct 2026 21:42:59 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/orm4cf</guid>
</item>
<item>
<title>cbq - v7.1.0</title>
<description>A protocol-based queueing system for ColdBox</description>
<link>https://www.forgebox.io/view/cbq</link>
<pubDate>Sun, 25 Oct 2026 20:50:40 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbq</guid>
</item>
<item>
<title>qb - v14.2.0</title>
<description>A query builder for the rest of us</description>
<link>https://www.forgebox.io/view/qb</link>
<pubDate>Sun, 25 Oct 2026 20:47:58 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/qb</guid>
</item>
<item>
<title>BX XTDB - v0.1.0</title>
<description>Native BoxLang datasource support for XTDB.</description>
<link>https://www.forgebox.io/view/bx-xtdb</link>
<pubDate>Sun, 25 Oct 2026 01:57:20 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-xtdb</guid>
</item>
<item>
<title>megaphone - v1.4.0</title>
<description>A protocol-based library for sending Notifications in ColdBox</description>
<link>https://www.forgebox.io/view/megaphone</link>
<pubDate>Sun, 25 Oct 2026 00:03:53 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/megaphone</guid>
</item>
<item>
<title>AppDotEnv - v2.0.0</title>
<description>A per-application .env for ColdBox apps that share one CFML engine with other sites. Values stay in the application scope, never in the JVM or the OS environment.</description>
<link>https://www.forgebox.io/view/appdotenv</link>
<pubDate>Sat, 24 Oct 2026 02:27:43 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/appdotenv</guid>
</item>
<item>
<title>Boxlang Redis Module - v1.1.1+11</title>
<description>Native Boxlang module for Redis integration: Cache, Pub/Sub, Streams, and more.</description>
<link>https://www.forgebox.io/view/bx-redis</link>
<pubDate>Thu, 25 Jun 2026 12:06:37 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-redis</guid>
</item>
<item>
<title>BoxLang Audio - v1.2.0+3</title>
<description>Audio synthesis, mixing, analysis, text-to-speech and playback for BoxLang, with no native dependencies</description>
<link>https://www.forgebox.io/view/bx-audio</link>
<pubDate>Fri, 23 Oct 2026 09:02:49 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-audio</guid>
</item>
<item>
<title>BoxLang Playwright (Full) - v1.0.0-snapshot</title>
<description>Fluent browser automation and testing for BoxLang, powered by Microsoft Playwright</description>
<link>https://www.forgebox.io/view/bx-playwright-full</link>
<pubDate>Fri, 23 Oct 2026 17:01:43 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-playwright-full</guid>
</item>
<item>
<title>BoxLang Playwright - v1.0.0-snapshot</title>
<description>Fluent browser automation and testing for BoxLang, powered by Microsoft Playwright</description>
<link>https://www.forgebox.io/view/bx-playwright</link>
<pubDate>Fri, 23 Oct 2026 17:01:28 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-playwright</guid>
</item>
<item>
<title>BX Sites - v1.0.0-snapshot</title>
<description>The AI-first static site generator. Turns Markdown into fast, themed, searchable websites for documentation, blogs, marketing sites, and knowledge bases. Host anywhere, or on bxSites Cloud.</description>
<link>https://www.forgebox.io/view/bx-sites</link>
<pubDate>Fri, 23 Oct 2026 15:49:53 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-sites</guid>
</item>
<item>
<title>ColdBox ORM Extensions - v5.1.0+12</title>
<description>ColdBox ORM extensions for BoxLang: services, active entities, criteria and events on top of the bx-orm module (Hibernate 7).</description>
<link>https://www.forgebox.io/view/cborm</link>
<pubDate>Wed, 09 Sep 2026 00:30:17 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cborm</guid>
</item>
<item>
<title>BoxLang AI - v3.6.0+20</title>
<description>AI integration for BoxLang</description>
<link>https://www.forgebox.io/view/bx-ai</link>
<pubDate>Tue, 20 Oct 2026 22:38:05 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-ai</guid>
</item>
<item>
<title>CommandBox BoxLang CLI Tools - v1.22.0</title>
<description>CommandBox BoxLang CLI Tools</description>
<link>https://www.forgebox.io/view/commandbox-boxlang</link>
<pubDate>Fri, 23 Oct 2026 05:18:22 GMT</pubDate>
<category>commandbox-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/commandbox-boxlang</guid>
</item>
<item>
<title>BoxExpress - v0.2.22</title>
<description>An Express.js-style web framework for BoxLang</description>
<link>https://www.forgebox.io/view/boxlang-express</link>
<pubDate>Fri, 23 Oct 2026 00:03:31 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/boxlang-express</guid>
</item>
<item>
<title>PresideCMS Extension: Admin dashboards - v3.3.0+0000499</title>
<description># PresideCMS Extension: Admin Dashboards
This is an extension for PresideCMS that provides APIs and a methodolgy for creating user customizable dashboard interfaces in Preside admin.
## Installation
Install with:
```box install preside-ext-admin-dashboards```
## User stories
The following user stories describe the functionality of this extension:
* As an admin user, I want to be able to view a dashboard with multiple widgets so that I can get an overview of a particular data scenario(s)
* As an admin administrator, I want to be able to limit access to particular dashboard widgets so that I can protect sensitive data and functionality
* As an admin user, I want to be able to configure widgets and have my configuration persisted so that I can customize my view of a dashboard
## Rendering a dashboard
Admin dashboards are made up of "widgets" that a user can configure to show stats, summaries, etc. To render a dashboard, you can use the `renderAdminDashboard()` helper, providing an _arbitrary but unique_ dashboard ID that identifies a unique dashboard, an array of widget IDs and an optional column count (default 2, valid options are 1, 2, 3 or 4):
```cfc
#renderAdminDashboard( 
dashboardId = "mainAdminDashboard"
, widgets     = [ "latestNews", "topStories", "yourTasks" ]
, columnCount = 3
)#
```
### Passing instance specific data
You may have a case where:
1. You have multiple instances of the same dashboard, but with different instance data
2. You have multiple instances of the same widget within your dashboard, but with different hard coded config values
For this you can use the `contextData` arg to `renderAdminDashboard` and/or individual widgets:
```cfc
// example 1
#renderAdminDashboard( 
dashboardId = "mainAdminDashboard"
, widgets     = [ "latestNews", "topStories", "yourTasks" ]
, columnCount = 3
, contextData = { recordId=prc.recordId }
)#
// example 2
#renderAdminDashboard( 
dashboardId = "mainAdminDashboard"
, columnCount = 3
, widgets     = [ 
{ id="stats", contextData={ object="event" }, ajax=false, configInstanceId="event" }, 
{ id="stats", contextData={ object="news"  }, ajax=false, configInstanceId="news" }
]
)#
```
Notice how, in example 2, each widget is a `struct`. Widgets can either be passed as a simple string to represent the widget ID, or as a struct with the following keys:
* `id`: The widget ID
* `contextData`: Widget specific struct of data that will be passed to the widget render
* `ajax`: Whether or not to use ajax to render the widget (default true)
* `configInstanceId`: String to identify, along with the dashboard ID and user ID, a unique set of configuration options for the widget
## Creating dashboard widgets
An admin dashboard widget is created in three parts; a handler for rendering a widget and running any custom permissioning logic, an i18n properties file for labels and icons, and a preside form for providing any user editable config for the widget. 
For example, if you had a widget called `latestNews`, you would have the following files:
```
/i18n/admin/admindashboards/widget/latestNews.properties
/forms/admin/admindashboards/widget/latestNews.xml
/handlers/admin/admindashboards/widget/LatestNews.cfc
```
And they might look like this:
```properties
// /i18n/admin/admindashboards/widget/latestNews.properties
title=Latest news
description=See below for latest news articles for you to read.
iconClass=fa-newspaper orange
field.category.title=Category
```
```xml
// /forms/admin/admindashboards/widget/latestNews.xml
```
```cfc
// /handlers/admin/admindashboards/widget/LatestNews.cfc
component {
// You MUST implement a render() method with which to render
// the content
private string function render( event, rc, prc, args={} ) {
args.latestNews = getModel( "newsService" ).getLatestNews( 
category = args.config.category ?: "" // args.config is the user configured config from the config form
, featured = IsTrue( args.contextData.featured ?: "" ) // args.contextData is any data passed in renderAdminDashboard() call
);
return renderView( view="/admin/admindashboards/widgets/latestNews", args=args );
}
// An OPTIONAL permissions checking handler that returns true or false
private boolean function hasPermission( event, rc, prc, args={} ) {
return true;
}
// An OPTIONAL handler to render additional top right 'menu items' in the widget
private string function additionalMenu( event, rc, prc, args={} ) {
var addLink = event.buildAdminLink( objectName="news_item", operation="addRecord" );
return ' ';
}
}
```
## What's next
We've created this extension with what we feel is the bare minimum functionality for a first release. Obvious features that are lacking:
* Ability for a dashboard to have _optional_ widgets that users can add to a dashboard if they want
* Ability for a dashboard user to drag items around and configure them the way they like
* Ability for a dashboard user to save a dashboard configuration and share it with other users
If you're keen on helping out with ideas or code, do get in touch!</description>
<link>https://www.forgebox.io/view/preside-ext-admin-dashboards</link>
<pubDate>Wed, 21 Oct 2026 07:51:31 GMT</pubDate>
<category>preside-extensions</category>
<guid isPermaLink="false">https://www.forgebox.io/view/preside-ext-admin-dashboards</guid>
</item>
<item>
<title>PresideCMS Extension: Chart.js for Preside - v0.4.0+0000067</title>
<description># Chart.js for Preside</description>
<link>https://www.forgebox.io/view/preside-ext-chart-js</link>
<pubDate>Wed, 21 Oct 2026 05:02:47 GMT</pubDate>
<category>preside-extensions</category>
<guid isPermaLink="false">https://www.forgebox.io/view/preside-ext-chart-js</guid>
</item>
<item>
<title>Stripe CFML - v4.3.0</title>
<description>Stripe CFML is a CFML (Lucee and ColdFusion) library for interacting with the Stripe API.</description>
<link>https://www.forgebox.io/view/stripecfml</link>
<pubDate>Tue, 20 Oct 2026 23:28:39 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/stripecfml</guid>
</item>
<item>
<title>Adobe ColdFusion - v2025.0.14+332029</title>
<link>https://www.forgebox.io/view/adobe</link>
<pubDate>Tue, 20 Oct 2026 21:27:04 GMT</pubDate>
<category>cf-engines</category>
<guid isPermaLink="false">https://www.forgebox.io/view/adobe</guid>
</item>
<item>
<title>Lucee Pasword Util - v1.2.1</title>
<description>A utility to manage passwords for Lucee and Railo server installs.</description>
<link>https://www.forgebox.io/view/lucee-password-util</link>
<pubDate>Tue, 20 Oct 2026 20:40:52 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/lucee-password-util</guid>
</item>
<item>
<title>cbswagger - v3.1.4+15</title>
<description>A Coldbox Module which automatically generates api documentation from your configured SES routes</description>
<link>https://www.forgebox.io/view/cbswagger</link>
<pubDate>Mon, 19 Oct 2026 21:59:38 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbswagger</guid>
</item>
<item>
<title>BoxLang JRuby Rack Support - v1.1.0</title>
<description>Run Rack and Ruby framework applications in BoxLang.</description>
<link>https://www.forgebox.io/view/bx-jruby-rack</link>
<pubDate>Sat, 17 Oct 2026 21:57:18 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-jruby-rack</guid>
</item>
<item>
<title>BoxLang JRuby Support - v1.2.0</title>
<description>Run Ruby code in BoxLang with JRuby, explicit bindings, and reusable sessions.</description>
<link>https://www.forgebox.io/view/bx-jruby</link>
<pubDate>Sat, 17 Oct 2026 21:46:33 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-jruby</guid>
</item>
</channel>
</rss>