<?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>Mon, 14 Sep 2026 23:03:27 GMT</lastBuildDate>
<pubDate>Mon, 14 Sep 2026 23:03:27 GMT</pubDate>
<item>
<title>BoxLang FTP &amp; SFTP Module - v1.8.0+11</title>
<description>This BoxLang module provides FTP and SFTP file transfer capabilities.</description>
<link>https://www.forgebox.io/view/bx-ftp</link>
<pubDate>Mon, 14 Sep 2026 22:39:44 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-ftp</guid>
</item>
<item>
<title>BoxLang CommandBox Engine - v1.17.5+59</title>
<description>The CommandBox Engine for BoxLang</description>
<link>https://www.forgebox.io/view/boxlang</link>
<pubDate>Mon, 14 Sep 2026 18:47:34 GMT</pubDate>
<category>cf-engines</category>
<guid isPermaLink="false">https://www.forgebox.io/view/boxlang</guid>
</item>
<item>
<title>BoxLang ORM - v1.7.0+33</title>
<description>ORM for BoxLang</description>
<link>https://www.forgebox.io/view/bx-orm</link>
<pubDate>Mon, 14 Sep 2026 17:52:23 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-orm</guid>
</item>
<item>
<title>Preside - v10.30.40+0011441</title>
<description>The Preside platform by Pixl8 Interactive</description>
<link>https://www.forgebox.io/view/presidecms</link>
<pubDate>Fri, 11 Sep 2026 15:38:30 GMT</pubDate>
<category>cms</category>
<guid isPermaLink="false">https://www.forgebox.io/view/presidecms</guid>
</item>
<item>
<title>BoxExpress - v0.2.12</title>
<description>An Express.js-style web framework for BoxLang</description>
<link>https://www.forgebox.io/view/boxlang-express</link>
<pubDate>Mon, 14 Sep 2026 13:44:53 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/boxlang-express</guid>
</item>
<item>
<title>CB Genesis Starter Template - v1.0.0-snapshot</title>
<description>This starter template will give you all the basics you need to get started with ColdBox.</description>
<link>https://www.forgebox.io/view/cbgenesis</link>
<pubDate>Mon, 14 Sep 2026 11:11:11 GMT</pubDate>
<category>mvc</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbgenesis</guid>
</item>
<item>
<title>TestBox - v7.1.0+20</title>
<description>A BDD and xUnit testing framework with Mocking Goodness</description>
<link>https://www.forgebox.io/view/testbox</link>
<pubDate>Fri, 11 Sep 2026 21:04:11 GMT</pubDate>
<category>testing</category>
<guid isPermaLink="false">https://www.forgebox.io/view/testbox</guid>
</item>
<item>
<title>build-template - v2.0.1</title>
<description>A CommandBox module for checking, versioning, building, and publishing CFML projects to ForgeBox and GitHub.</description>
<link>https://www.forgebox.io/view/build-template</link>
<pubDate>Sun, 13 Sep 2026 15:48:21 GMT</pubDate>
<category>commandbox-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/build-template</guid>
</item>
<item>
<title>OriginGuard - v1.0.1</title>
<description>Header-based cross-origin (CSRF) protection for ColdBox apps using the browser's Sec-Fetch-Site and Origin headers. No tokens, no sessions.</description>
<link>https://www.forgebox.io/view/originguard</link>
<pubDate>Sun, 13 Sep 2026 07:39:16 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/originguard</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>Sat, 12 Sep 2026 22:07:18 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-agents</guid>
</item>
<item>
<title>ColdBox CLI - v8.14.1+33</title>
<description>The official CLI for the ColdBox Framework</description>
<link>https://www.forgebox.io/view/coldbox-cli</link>
<pubDate>Fri, 31 Jul 2026 23:57:12 GMT</pubDate>
<category>commandbox-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/coldbox-cli</guid>
</item>
<item>
<title>cbfs-r2 - v0.1.0</title>
<description>Cloudflare R2 disk provider for cbfs</description>
<link>https://www.forgebox.io/view/cbfs-r2</link>
<pubDate>Fri, 11 Sep 2026 23:28:44 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbfs-r2</guid>
</item>
<item>
<title>r2sdk - v0.1.0</title>
<description>Cloudflare R2 client using the S3 API</description>
<link>https://www.forgebox.io/view/r2sdk</link>
<pubDate>Fri, 11 Sep 2026 23:24:42 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/r2sdk</guid>
</item>
<item>
<title>TestBox CLI - v1.10.0+27</title>
<description>The TestBox CLI will assist you with running, reporting and generating tests</description>
<link>https://www.forgebox.io/view/testbox-cli</link>
<pubDate>Fri, 11 Sep 2026 22:22:59 GMT</pubDate>
<category>commandbox-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/testbox-cli</guid>
</item>
<item>
<title>BoxLang MCP Server - v1.5.0+8</title>
<description>The BoxLang MCP Server module for web applications</description>
<link>https://www.forgebox.io/view/bx-mcp</link>
<pubDate>Mon, 13 Jul 2026 20:39:57 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-mcp</guid>
</item>
<item>
<title>BoxLang AI - v3.5.0+19</title>
<description>AI integration for BoxLang</description>
<link>https://www.forgebox.io/view/bx-ai</link>
<pubDate>Fri, 11 Sep 2026 21:27:55 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-ai</guid>
</item>
<item>
<title>BoxLang PDF Module - v1.6.7+10</title>
<description>Enahanced PDF Module for BoxLang</description>
<link>https://www.forgebox.io/view/bx-pdf</link>
<pubDate>Fri, 11 Sep 2026 20:36:53 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-pdf</guid>
</item>
<item>
<title>BX Sites - v1.0.0-snapshot</title>
<description>A modern, BoxLang-powered static site generator that turns Markdown into fast, themed, searchable websites for documentation, blogs, marketing sites, and knowledge bases.</description>
<link>https://www.forgebox.io/view/bx-sites</link>
<pubDate>Fri, 11 Sep 2026 19:17:54 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-sites</guid>
</item>
<item>
<title>ContentBox CLI - v1.10.0+7</title>
<description>The official CLI for the ContentBox Modular CMS</description>
<link>https://www.forgebox.io/view/contentbox-cli</link>
<pubDate>Fri, 11 Sep 2026 17:31:00 GMT</pubDate>
<category>commandbox-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/contentbox-cli</guid>
</item>
<item>
<title>Lucee Light CF Engine - v7.1.0+204</title>
<description>Lucee Light WAR engine for CommandBox servers.</description>
<link>https://www.forgebox.io/view/lucee-light</link>
<pubDate>Fri, 21 Aug 2026 15:42:11 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.0+204</title>
<description>Lucee WAR engine for CommandBox servers.</description>
<link>https://www.forgebox.io/view/lucee</link>
<pubDate>Fri, 21 Aug 2026 15:41:37 GMT</pubDate>
<category>cf-engines</category>
<guid isPermaLink="false">https://www.forgebox.io/view/lucee</guid>
</item>
<item>
<title>Token-Oriented Object Notation (TOON) for CFML - v1.0.6+0000025</title>
<description>Encode and decode TOON (Token-Oriented Object Notation) for LLM-friendly compact data</description>
<link>https://www.forgebox.io/view/cbtoon</link>
<pubDate>Fri, 11 Sep 2026 10:32:26 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbtoon</guid>
</item>
<item>
<title>LogBox Logging Library - v8.1.0+34</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, 14 Apr 2026 20:32:44 GMT</pubDate>
<category>logging</category>
<guid isPermaLink="false">https://www.forgebox.io/view/logbox</guid>
</item>
<item>
<title>WireBox DI/AOP - v8.1.0+34</title>
<description>AOP and Dependency Injection Framework</description>
<link>https://www.forgebox.io/view/wirebox</link>
<pubDate>Tue, 14 Apr 2026 20:32:32 GMT</pubDate>
<category>di</category>
<guid isPermaLink="false">https://www.forgebox.io/view/wirebox</guid>
</item>
<item>
<title>CacheBox - v8.1.0+34</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, 14 Apr 2026 20:32:20 GMT</pubDate>
<category>caching</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cachebox</guid>
</item>
<item>
<title>ColdBox Platform For BoxLang - v8.1.0+34</title>
<description>A conventions based HMVC development framework</description>
<link>https://www.forgebox.io/view/bx-coldbox</link>
<pubDate>Tue, 14 Apr 2026 20:32:07 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-coldbox</guid>
</item>
<item>
<title>ColdBox Platform - v8.1.0+34</title>
<description>A conventions based HMVC development framework</description>
<link>https://www.forgebox.io/view/coldbox</link>
<pubDate>Tue, 14 Apr 2026 20:31:55 GMT</pubDate>
<category>mvc</category>
<guid isPermaLink="false">https://www.forgebox.io/view/coldbox</guid>
</item>
<item>
<title>ColdBox Cross Site Request Forgery (CSRF) - v3.3.0+2</title>
<description>A module that protects you against CSRF (Cross Site Request Forgery) attacks by generating unique FORM/client tokens</description>
<link>https://www.forgebox.io/view/cbcsrf</link>
<pubDate>Thu, 10 Sep 2026 14:34:07 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbcsrf</guid>
</item>
<item>
<title>cfformat - v0.22.1</title>
<description>A CommandBox module for formatting CFML component files.</description>
<link>https://www.forgebox.io/view/commandbox-cfformat</link>
<pubDate>Wed, 09 Sep 2026 22:14:34 GMT</pubDate>
<category>commandbox-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/commandbox-cfformat</guid>
</item>
<item>
<title>unleashsdk - v2.1.3</title>
<description>Library for interacting with Unleash feature flags</description>
<link>https://www.forgebox.io/view/unleashsdk</link>
<pubDate>Wed, 09 Sep 2026 17:38:02 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/unleashsdk</guid>
</item>
<item>
<title>Preside Extension: Alternate Admin Theme - v1.5.5+0000701</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, 09 Sep 2026 14:16:21 GMT</pubDate>
<category>preside-extensions</category>
<guid isPermaLink="false">https://www.forgebox.io/view/preside-ext-alt-admin-theme</guid>
</item>
<item>
<title>Masa CMS - v7.6.0</title>
<description>Masa CMS is an open source content management system for CFML.</description>
<link>https://www.forgebox.io/view/MasaCMS</link>
<pubDate>Wed, 09 Sep 2026 10:46:29 GMT</pubDate>
<category>cms</category>
<guid isPermaLink="false">https://www.forgebox.io/view/MasaCMS</guid>
</item>
<item>
<title>cbq - v7.0.0</title>
<description>A protocol-based queueing system for ColdBox</description>
<link>https://www.forgebox.io/view/cbq</link>
<pubDate>Wed, 09 Sep 2026 03:20:05 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbq</guid>
</item>
<item>
<title>ColdBox ORM Extensions - v5.1.0+12</title>
<description>Enhances the Hibernate ORM on BoxLang + CFML Engines with tons of utilities.</description>
<link>https://www.forgebox.io/view/cborm</link>
<pubDate>Tue, 08 Sep 2026 23:30:17 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cborm</guid>
</item>
<item>
<title>Adobe ColdFusion - v2025.0.13+331960</title>
<link>https://www.forgebox.io/view/adobe</link>
<pubDate>Tue, 08 Sep 2026 21:52:21 GMT</pubDate>
<category>cf-engines</category>
<guid isPermaLink="false">https://www.forgebox.io/view/adobe</guid>
</item>
<item>
<title>BoxLang Mail Module - v1.4.13+22</title>
<description>Boxlang module which adds mail funcitionality, components, and methods.</description>
<link>https://www.forgebox.io/view/bx-mail</link>
<pubDate>Tue, 08 Sep 2026 19:49:53 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-mail</guid>
</item>
<item>
<title>BoxLang Spreadsheet - v1.14.0+17</title>
<description>Comprehensive spreadsheet manipulation module for BoxLang with fluent API</description>
<link>https://www.forgebox.io/view/bx-spreadsheet</link>
<pubDate>Tue, 08 Sep 2026 18:05:31 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-spreadsheet</guid>
</item>
<item>
<title>PresideCMS Extension: Preside Content Dependency Tracker - v0.8.3+0000185</title>
<description># Preside Content Dependency Tracker
This is an extension for [Preside](https://www.preside.org) that provides tracking of content objects and their dependencies. Content objects could be pages, assets, links, rules engine conditions, system settings, helper objects. etc. The extension comes with a set of already configured content objects for tracking from the Preside Core. It's up to you to configure it in a way that fits your site or application.
As of now this extension is considered **alpha** and therefore to be used with caution. It has not been tested extensively with large databases yet.
In detail the extension provides the following functionality:
* admin interface to track configured content objects including their dependencies (bi-directional)
* automatic tracking tasks (full scanning/indexing and also index on changes)
* deal with both hard references (database foreign keys) and also soft references (e.g. objects used in rich editor content)
* Possibility to identifiy orphans and broken dependencies
* link in and out from/to Preside System (e.g. from an asset in asset manager see number of dependencies and directly link into the tracker)
ATTENTION: as of now this extension depends on the better-view-record-screen extension which is not open sourced (yet), stay tuned, as it will be soon...
## Installation
From the root of your application, type the following command in a terminal:
```
box install preside-ext-content-dependency-tracker --saveDev
```
## Configuration
All settings for this extension are located in the `Config.cfc` as in the following way:
```
settings.contentDependencyTracker = {
autoEnableDbTextFields = false
, trackObjects = {
asset = { enabled=true }
...
, page = {
enabled = true
, properties = {
main_content = { enabled=true }
, parent_page = { enabled=false }
, site = { enabled=false }
}
}
, system_config = {
enabled = true
, hideIrrelevantRecords = true
, labelGenerator = "dependencyTrackerSystemConfigLabelGenerator"
, labelRenderer = "dependencyTrackerSystemConfigLabelRenderer"
, viewRecordLinkRenderer = "dependencyTrackerSystemConfigLinkRenderer"
, properties = {
value = { enabled=true }
, site = { enabled=false }
}
}
}
, linkToTrackerEvents = {
"admin.datamanager.viewRecord" = { contentTypeParam="object" , contentIdParam="id" }
, "admin.datamanager.editRecord" = { contentTypeParam="object" , contentIdParam="id" }
, "admin.assetmanager.editAsset" = { contentType="asset" , contentIdParam="asset" }
, "admin.sites.editSite" = { contentType="site" , contentIdParam="id" }
, "admin.sitetree.editPage" = { contentType="page" , contentIdParam="id" }
, "admin.emailcenter.systemTemplates.template" = { contentType="email_template", contentIdParam="template" }
...
}
};
```
`autoEnableDbTextFields` will automatically enable all `dbtype="text"` fields on all objects that are enabled for tracking.
`trackObjects.{any_preside_object}.enabled` will enable (or disable) an object for tracking.
Enabling/disabling properties is done like this: `trackObjects.{preside_object_name}.properties.{property_name}.enabled`
Foreign Key properties (`many-to-one` and `many-to-many` relationships) will be automatically enabled if this is configured in the System Settings (see below).
If you explicitly want to disable a specific FK from being indexed, then disable it here in the `Config.cfc`.
For example the default configuration disables the parent_page and site properties, see above.
Non-relationsship fields always need to be manually enabled, e.g. have a look at the `value` property from the `system_config` object in the default configuration above.
`hideIrrelevantRecords=true` will mark indexed content records as `hidden`, if no single dependency exists.
You can control to not show hidden records via System settings (see further down below).
`labelGenerator` can be used on object-level in order to have a custom content renderer to be used when generating the label of the Content object.
`labelRenderer` is defined on object-level to have a custom content renderer be used to render the label of the content object.
For example the extension uses these two in combination to generate and render labels for the `system_config` object. In that case the generator uses `{category}:{setting}` for sys-config objects and the renderer uses i18n translations for those to make it render pretty (and language-aware),
e.g. you could then have a `system_config` Content Object with the label `website_users:default_post_login_page` which automatically renders to `Website user config: Default post login page`.
`viewRecordLinkRenderer` is used to define a custom content renderer to use for generating the link from the Dependency Tracker UI to the actual preside object record view.
By default and if nothing custom is specified the system will just use a general datamanager view record link. This might not work for some special records, e.g. in the default implementation `system_config` as well as `email_template` records need special links. See actual code of this extension how this is solved.
In order to be able to link from individual object records into the dependency tracker (and see the dependencies), the system need to know which events should be supported.
This is done by the configuration beneath `linkToTrackerEvents`.
It is a struct which has the actual Coldbox event names as the key, e.g. `admin.datamanager.viewRecord` is the standard datamanager view record event.
The configuration for each event needs to have a `contentIdParam` - this is the Request Context (`rc`) param where the logic should detect the ID of the record.
To determine the content type of the record (e.g. whether it's an asset, a page, an email_template, etc.) can be done in 2 ways. Either it's specified in a fix way using the `contentType` param, or use `contentTypeParam` to have the system check for the object type in the defined `rc` param.
All these settings can be tweaked/overwritten within your site's own `Config.cfc`.
For example if you want a custom object to be added, you would do something like this:
```
settings.contentDependencyTracker = settings.contentDependencyTracker ?: {};
settings.contentDependencyTracker.trackObjects = settings.contentDependencyTracker.trackObjects ?: {};
settings.contentDependencyTracker.trackObjects.my_custom_object = { enabled=true, properties={ some_field={ enabled=true } } }
```
Note: In order to track dependencies between content objects you need to make sure that both sides of the dependency are enabled for tracking.
### Annotations
All settings underneath `settings.contentDependencyTracker.trackObjects` can also be configured directly on your Preside objects via annotations. The annotations are labelled exactly the same, with the exception that a `dependencyTracker` prefix is needed.
For example the following is the `email_template.cfc` from the extension:
```
/**
* @dependencyTrackerEnabled true
* @dependencyTrackerViewRecordLinkRenderer dependencyTrackerEmailTemplateLinkRenderer
*/
component {
property name="html_body" dependencyTrackerEnabled=true;
}
```
This will enable dependency tracking for `email_template` objects and specifically check the `html_body` property for soft references to other defined content objects.
### Configuring your own objects for tracking
You can configure content objects for tracking in 2 ways, either by adding them in the settings of your application's `Config.cfc` or via Preside object annotations. Annotations take precedence over `Config.cfc`. It's totally up to you which method you want to use.
If you want to track content objects from other extensions within your application, the `Config.cfc` settings are a bit handier than annotations as you do not need to create a copy of all the Preside Objects from those extensions within your application. In addition, if there are objects defined to be tracked in the settings in `Config.cfc` and these do not exist at all in the current application, they are simply ignored without an error.
## Usage
After configuration, the actual usage of the extension can be divided in 2 parts:
* automatic finding and indexing of tasks
* making use of the indexed data
### Tasks
Two scheduled tasks exist to scan and index your objects for dependencies. Go to `System &gt; Task Manager` and check the `Content` tab there.
You will find:
* `[1] Scan all content object dependencies`
* `[2] Scan changed content object for dependencies`
The first one will perform a full re-index of all objects. Depending on the amount of records to be scanned, that might take a while. You could either only manually execute this or run it infrequently, e.g. nightly.
The second one should be run frequently, e.g. by default it is configured to run every 5 minutes. This only scans objects that require scanning. This only works if single record indexing is enabled. See below.
### System Settings
There are a couple of switches you can turn on/off in the system settings, which you find in the Preside admin here: `System &gt; Settings &gt; Content Dependency Tracker`.
* `Enabled`: global switch to enable/disable the whole content tracking
* `Foreign Key Scanning`: whether FK scanning should take place or not
* `Soft Reference Scanning`: whether non-relationship fields should be scanned
* `Hide all irrelevant records`: Flag all records without dependencies as hidden (you can also have this disabled here but enable it on a per-object basis using annotations)
* `Show hidden records`: whether content records flagged as `hidden` should be shown in the Dependency Tracker listing or not.
* `Show all orphaned records`: On deletion content records are flagged as `orphaned`. This setting controls if those should be displayed in the Dependency Tracker listing or not.
* `Single Record Scanning`: Will enable content objects to be flagged as `requires_scanning` on insert/update/delete.
If both FK + Soft Ref Scanning is disabled, the whole system is basically disabled.
Recommended settings to make the most out of the extension: Disable `Hide all irrelevant records` and `Show hidden records`, enable all others.
### Dependency Tracker Listing
Find the listing of Content objects and there dependencies in the Preside Admin underneath `System &gt; Dependency Tracker`.
Recommendations: Make yourself 1-click fav filters for the following two cases:
* `orphaned` &gt; filter for `orphaned=true`
* `broken dependencies` &gt; filter for `has more than 0 Uses matching optional filter broken`, where `broken` is a sub filter which is defined as `Dependent Content Object matches the following Dependency Tracker filter: orphaned`
### Clean-Up Orphans
There is a button in the Dependency Tracker Listing at the top right corner to remove all orphans which do not have any dependencies. You can manually execute it from time to time to get rid of obsolete data. Orphans which have dependencies will not be removed. E.g. you might have a rules engine filter used within a conditional content widget within a page - and that rules engine filter got deleted but is still in use in that page. Then the content object for this record will not be deleted.
### Link into Tracker UI from Core System
There is a feature that allows a global link to be rendered for configured content objects from anywhere in the Preside Admin into the Content Tracker. It is disabled by default but you can enable it in your `Config.cfc` as follows:
```
settings.features.globalLinkToDependencyTracker.enabled = true;
```
This will render a link whenever possible in the global navigation of the Preside Admin when viewing an object that is tracked. The link will show the number of dependencies and direct you to the content tracker. So for example if enabled you can see in the asset manager for an individual asset whether it's used and if so how often. Details of the dependencies can then be seen when clicking the link and being directed to the content object within the Dependency Tracker UI.
## Versioning
We use [SemVer](https://semver.org) for versioning. For the versions available, see the [tags on this repository](https://github.com/pixl8/preside-ext-content-dependency-tracker/releases). Project releases can also be found and installed from [Forgebox](https://forgebox.io/view/preside-ext-content-dependency-tracker).
## License
This project is licensed under the GPLv2 License - see the [LICENSE.txt](https://github.com/pixl8/preside-ext-content-dependency-tracker/blob/stable/LICENSE.txt) file for details.
## Changes / Contributions
Find all changes in the [CHANGELOG.md](https://github.com/pixl8/preside-ext-content-dependency-tracker/blob/stable/CHANGELOG.md)
Feel free to fork and pull request to contribute. Any additional feedback is very welcome - preferable via Github issues or on the Preside Slack channel.</description>
<link>https://www.forgebox.io/view/preside-ext-content-dependency-tracker</link>
<pubDate>Fri, 17 Oct 2025 04:00:19 GMT</pubDate>
<category>preside-extensions</category>
<guid isPermaLink="false">https://www.forgebox.io/view/preside-ext-content-dependency-tracker</guid>
</item>
<item>
<title>PresideCMS Extension: Admin dashboards - v3.2.4+0000481</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>Mon, 07 Sep 2026 07:10:47 GMT</pubDate>
<category>preside-extensions</category>
<guid isPermaLink="false">https://www.forgebox.io/view/preside-ext-admin-dashboards</guid>
</item>
<item>
<title>cbsecurity-passkeys - v1.0.13</title>
<description>Passkeys support for CBSecurity</description>
<link>https://www.forgebox.io/view/cbsecurity-passkeys</link>
<pubDate>Mon, 07 Sep 2026 03:08:18 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbsecurity-passkeys</guid>
</item>
<item>
<title>BoxLang CommandBox Module - v7.0.23-beta</title>
<description>CommandBox CLI for BoxLang</description>
<link>https://www.forgebox.io/view/bx-cli</link>
<pubDate>Sat, 05 Sep 2026 06:22:41 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-cli</guid>
</item>
<item>
<title>Chrono - v0.1.2+0000012</title>
<description>Pure CFML cron expression parsing, validation, next-run calculation and human-readable descriptions. A dependency-free port of cron-utils.</description>
<link>https://www.forgebox.io/view/chrono</link>
<pubDate>Fri, 04 Sep 2026 11:23:30 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/chrono</guid>
</item>
<item>
<title>cbTypesense - v1.0.0+4</title>
<description>A resilient Typesense API client for ColdBox</description>
<link>https://www.forgebox.io/view/cbtypesense</link>
<pubDate>Fri, 04 Sep 2026 05:50:55 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbtypesense</guid>
</item>
<item>
<title>BoxLang Fluent Image Library - v1.10.0+24</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>Wed, 02 Sep 2026 20:39:10 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-image</guid>
</item>
<item>
<title>ColdBox Mail Services - v2.13.0+7</title>
<description>The ColdBox Mail services module will allow you to send email the OO and fluent way in multiple protocols</description>
<link>https://www.forgebox.io/view/cbmailservices</link>
<pubDate>Wed, 02 Sep 2026 14:44:20 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbmailservices</guid>
</item>
<item>
<title>BoxLang Compat Module For CFML - v1.39.0+55</title>
<description>Compatibility module for BoxLang so it behaves like a CFML engine</description>
<link>https://www.forgebox.io/view/bx-compat-cfml</link>
<pubDate>Tue, 01 Sep 2026 16:17:09 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-compat-cfml</guid>
</item>
<item>
<title>cbZUGFeRD - v1.2.1</title>
<description>A Coldfusion Coldbox wrapper for ZUGFeRD using mustangproject</description>
<link>https://www.forgebox.io/view/cbzugferd</link>
<pubDate>Tue, 01 Sep 2026 09:19:23 GMT</pubDate>
<category>modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/cbzugferd</guid>
</item>
<item>
<title>BoxLang UI Compatibility Module - v1.0.7+11</title>
<description>CFML Compatibility UI components module for BoxLang</description>
<link>https://www.forgebox.io/view/bx-ui-compat</link>
<pubDate>Mon, 31 Aug 2026 22:32:52 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-ui-compat</guid>
</item>
<item>
<title>ESAPI - v1.10.0+14</title>
<description>Module template for BoxLang modules</description>
<link>https://www.forgebox.io/view/bx-esapi</link>
<pubDate>Mon, 31 Aug 2026 16:43:24 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-esapi</guid>
</item>
<item>
<title>BoxLang Microsoft SQL Server - v1.6.0+13</title>
<description>Microsoft SQL Server JDBC Support for BoxLang</description>
<link>https://www.forgebox.io/view/bx-mssql</link>
<pubDate>Fri, 05 Dec 2025 16:10:11 GMT</pubDate>
<category>boxlang-modules</category>
<guid isPermaLink="false">https://www.forgebox.io/view/bx-mssql</guid>
</item>
</channel>
</rss>
