
User Interface Improvements and New Screen Implementation
Welcome to ZIRIS DevHubπ οΈ β a centralized toolkit and launcher framework designed for InterSystems IRIS developers.
Easily organize, access, and extend developer tools, admin utilities, CSP pages, and more β all in one place.
ZIRIS.DevHub provides a centralized home page (ZIRIS.DevHub.Home.cls) that acts as the launchpad for all your development and admin tools.
This modular framework enables developers to quickly navigate and manage various utilities built as individual classes.
To maintain clarity, scalability, and ease of navigation, the following package structure and naming convention is used:
Note: CSP classes can be included in any of the packages below if needed.
ZIRIS.DevHub βββ Home.cls ; Central CSP launcher for the DevHub portalβββ Portal\ ; CSP base classes and layout helpers
β βββ Template.cls ; Base class for CSP pages (extends %CSP.Page)
β βββ Projection.cls ; Logic used by Template (e.g., dynamic layout/rendering)βββ Base\ ; Shared non-UI logic and utilities
β βββ StringHelper.cls ; String utilities
β βββ DateUtils.cls ; Date/time utilities
β βββ Constants.cls ; Shared constant valuesβββ Tools\ ; Developer tools (feature-focused)
β βββ BookmarkLauncher.cls ; Tool logic
β βββ BookmarkLauncherPage.cls ; CSP page for the tool (extends Template)βββ Admin\ ; Admin tools and utilities
β βββ ShowGlobals.cls ; Displays system globals
β βββ GlobalManagerPage.cls ; CSP page for managing globalsβββ Errors\ ; Error handling (UI and logic)
β βββ ViewErrors.cls ; Logic for viewing error logs
β βββ ViewErrorsPage.cls ; CSP page to display error logsβββ CSP\ ; Generic/shared CSP pages (not tied to specific module)
β βββ ErrorViewer.cls ; Shared error display page
β βββ CSPDiagnostics.cls ; General-purpose diagnostics pageβββ Utils\ ; Optional extra utilities (can be merged into Base)
βββ Logger.cls ; Logging utility
βββ ConfigLoader.cls ; Configuration helper
Classes are named following this pattern:
ZIRIS.DevHub.[Module].[Action/Function].cls
Module β Functional area (e.g., Tools, Admin, Errors, CSP, Utils)Action/Function β Specific task or utility performed by the class (e.g., ShowGlobals, ViewErrors, BookmarkLauncher)ZIRIS.DevHub.Home.cls is the Home class you can access all developer tools here
e.g
http://server:[port]/namespacecsp/ZIRIS.DevHub.Home.cls
http://172.23.125.184:52773/csp/user/ZIRIS.DevHub.Home.cls
We welcome contributions from the community! To contribute:
Fork the repository.
Create a feature branch (git checkout -b feature/YourFeature).
Implement your feature or fix.
Follow the existing package and naming conventions:
ZIRIS.DevHub.[Module].[Action/Function].cls format.Write clear commit messages.
Submit a pull request with a description of your changes.
Create a new CSP application within the appropriate module folder.
Extend the Base Template
Your CSP class should extend:
ZIRIS.DevHub.Template
Add Required Parameters
CATEGORY β Used for sorting or grouping the application.APPLICATION β The display name of your application.Describe the Application
AppDescription() class method to return a brief description of your application.Example:
ClassMethod AppDescription() As %String
{
return "This tool allows developers to view and manage global variables."
}
You can install ZIRIS DevHub by cloning this repository or importing the classes into your IRIS namespace:
Clone the repository:
git clone https://github.com/yourusername/ZIRIS-DevHub.git
Navigate to the project directory:
cd ZIRIS-DevHub
Run the docker compose file:
docker compose -f docker-compose.yml up -d --build
Then, in the IRIS terminal:
ZN "YOURNAMESPACE"
do $System.OBJ.LoadDir("/path/to/ZIRIS-DevHub/src", "ck")
Or, if published as a ZPM package, you can install via:
zpm:USER> install ZIRIS-DevHub
This project is licensed under the MIT License.
For questions or support, please open an issue or contact the maintainer.
Thank you for using ZIRIS DevHub β making IRIS development easier, one tool at a time!