๐งฉ Architecture & Core Logic
- Super Powers
- Joomla Powers
- Compile Native Components, Plugins & Modules
- Multi-Version Support
- Conditional Logic Injection
- Reusable Admin Views
- Dynamic GET Builder
- Round-Trip Code Integration
- Custom Admin Views
- Site Views
- Dynamic Dashboards
- Model Linking Between Views
- Shared Field Reuse Across Views
- Drag & Drop Field Mapping
- Dynamic Field Visibility
- Independent Packaging
๐ Joomla CMS Integration
๐งฑ Custom Code System (Powerful Dual Feature)
๐ Field Type System
๐ Snippets, Templates, Layouts, Libraries
- Snippets Reusable Html Blocks
- Layouts Reusable Php Render Templates
- Templates Page Level Views Linked To Custom Admin Site Views
- Libraries JS CSS Assets Linked To UI
- CDN Local Toggle For Library Delivery
- Media Folder Injection With Override Support
- Repository Push Pull Reset Workflow
- Init Snippets Layouts Templates Via Gui
๐ฆ Packages
๐งฉ Architecture & Core Logic
๐ File & Code Management
๐ง Code Reuse & Blueprints
๐ Joomla CMS Integration
๐จ Visual GUI & UX
๐ Internationalization
๐ฆ Packaging & Distribution
โ๏ธ Compiler Engine Features
๐งฑ Custom Code System
๐ Field Type System
๐ Dynamic GET (Visual SQL Engine)
๐ Snippets, Templates, Layouts, Libraries
๐ Documentation & Metadata
๐ Analytics & Insights
๐งฉ Architecture & Core Logic
- Super Powers
- Joomla Powers
- Compile Native Components, Plugins & Modules
- Multi-Version Support
- Conditional Logic Injection
- Reusable Admin Views
- Dynamic GET Builder
- Round-Trip Code Integration
- Custom Admin Views
- Site Views
- Dynamic Dashboards
- Model Linking Between Views
- Shared Field Reuse Across Views
- Drag & Drop Field Mapping
- Dynamic Field Visibility
- Independent Packaging
๐ Joomla CMS Integration
- Token Integration
- ACL Per View, Field, Item
- Field-Based Joomla Config Generation
- Support For Joomla Categories/Tags/Custom Fields
- CLI-Ready Components
- Joomla Update Server Integration
- Version-Aware Language String Compilation
- Remote Publishing to Custom Repo Update Streams
๐ Field Type System
- Field Types Define Templates And Data Types
- Gui Defined Rules Required Unique Nullable
- Save Get Hooks Per Field
- Database Schema Auto Generated From Field Settings
- Per Display Field Rendering Config List Edit
- Create Dynamic Models With Modals Selectors
- Conditional Js And Css Per Field
๐ Snippets, Templates, Layouts, Libraries
- Snippets Reusable Html Blocks
- Layouts Reusable Php Render Templates
- Templates Page Level Views Linked To Custom Admin Site Views
- Libraries JS CSS Assets Linked To UI
- CDN Local Toggle For Library Delivery
- Media Folder Injection With Override Support
- Repository Push Pull Reset Workflow
- Init Snippets Layouts Templates Via Gui
Auto-Compile and Auto-Tag Packages
Maintain clean version control, eliminate manual steps, and ensure every component build is traceable, taggable, and deployable โ all without leaving JCB
What It Does
When you enable auto-compile and auto-tagging, JCB will:
- Detect changes to your component blueprint
- Trigger a fresh compilation of the component (ZIP, codebase, changelog, etc.)
- Generate or increment a version number (e.g. v1.2.3 โ v1.2.4)
- Create a Git tag for the new version
- Optionally push the package and metadata to your selected Git repository
This turns your component development process into a lightweight CI pipeline โ no manual ZIP building or tagging needed.
Key Features
- โ๏ธ Build Trigger
A new compilation is initiated when:- A commit is made to the blueprint
- A Git push occurs with the โauto-compileโ flag
- A CLI command (or webhook) calls the compiler
- ๐ Semantic Versioning
Auto-tagging follows semver conventions by default:- Patch: Bugfix or minor changes โ 1.2.3 โ 1.2.4
- Minor: New features โ 1.2.3 โ 1.3.0
- Major: Breaking change โ 1.2.3 โ 2.0.0
- ๐ Auto-Changelog
When auto-tagging is enabled, JCB optionally includes a changelog generated from:- Entity diffs (views, fields, templates, etc.)
- Git commit messages
- Manual description input during tag creation
- ๐ค Optional Git Push
Compiled ZIPs and metadata (build info, changelog, version tag) can be automatically pushed to:- GitHub / GitLab / Gitea repositories
- Joomla update streams
- Internal testing pipelines
- ๐ Build ID Injection
The resulting package includes metadata like:- Build ID
- Compile timestamp
- JCB version used
- Joomla target version(s)
- Entity revision hash
- CLI Support
You can use the JCB CLI runner to trigger this entire flow:jcb compile --auto-tag --push
This makes integration into deployment pipelines seamless.
Use Cases
- Releasing components directly from your JCB interface
- Deploying new versions via Git with changelog & version control
- Eliminating manual compile โ ZIP โ tag โ upload workflows
- Running CI-style nightly builds of your components
Conclusion
With Auto-Compile and Auto-Tagging, JCB becomes not just a builder โ but your release engine. Maintain clean version control, eliminate manual steps, and ensure every component build is traceable, taggable, and deployable โ all without leaving JCB.
Summary
JCB can automatically compile your component and assign semantic version tags when pushing to Git or deploying packages. This streamlines your development workflow and makes distribution of releases more consistent, repeatable, and automated.