๐งฉ 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
Update Detection & Visual Diffing
Update detection and visual diffing is one of JCBโs most powerful safety features โ enabling intelligent, traceable compilation
What Is Update Detection?
When a reusable code block (e.g. from a Custom Code entity, Layout, or Template) is injected into a compiled file, JCB wraps that block with special comment markers known as insert/replace tags. On future rebuilds, JCB uses those tags to:
- Compare the original code vs. the code currently in the file
- Identify any differences between versions
- Warn you if a manual edit was made to an injected block
- Decide whether to update, skip, or log the conflict
This mechanism ensures safe โround-tripโ workflows โ you can edit compiled files (for example, via IDE sync), and JCB will detect if somethingโs been changed and react accordingly.
How It Works
- You define and inject a reusable Custom Code block (e.g. validation.php).
- On compile, JCB adds that block with identifiable comment tags (e.g. // [CODE: my_block]).
- You edit the compiled file manually (or fetch from IDE).
- Next compile: JCB reads both the new version and original block.
- If a mismatch is found, it presents a diff and logs the override.
Key Features
- ๐ Visual Diff Comparison: Side-by-side detection of modified vs. original blocks, showing additions, deletions, and changes.
- ๐ Round-Trip Safety: Changes in compiled files are not blindly overwritten โ JCB flags them for inspection.
- ๐ Central Diff Logging: Changes are logged to the compiler logs for inspection and tracking.
- ๐ง Smart Context Recognition: Diffing is aware of comment-style, language syntax, and block context (HTML, PHP, etc.).
- ๐ Warning System: Displays alerts in the compile summary when it finds mismatches or injected code that was edited.
- ๐พ Override Preservation: You can choose to preserve manual edits and skip automatic replacement, depending on your development strategy.
Use Cases
- You edited compiled logic in your IDE and want to preserve it during JCB rebuild.
- Youโre collaborating and want to see what changed in a shared code block.
- You manage version-controlled blueprints and want to avoid unintended regressions.
Why It Matters
- โ Prevents Accidental Overwrites: Manual changes are never lost without warning.
- โ Enables Round-Trip Coding: Fetch > Edit > Compile again โ all with safety nets.
- โ Facilitates Collaboration: See who made what changes when working in teams.
Conclusion
Update detection and visual diffing is one of JCBโs most powerful safety features โ enabling intelligent, traceable compilation. You keep full control of your overrides and code changes, and JCB makes sure nothing is lost along the way. Whether youโre working alone or with a team, it gives you peace of mind and protects your logic.
Summary
JCB tracks injected and reused code with a visual diff system, allowing you to detect changes between the original and compiled code โ preserving overrides, alerting you to differences, and helping prevent accidental loss of edits during rebuilds.