๐งฉ 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
Reverse Engineering of Language Constants
What Is Reverse Engineering of Language Constants?
Reverse engineering of language constants is a JCB feature that scans your component files (HTML, PHP, layouts, etc.) for hardcoded strings (e.g. "Submit", "Settings", "Hello World") and converts them into proper Joomla JText::_() references.
When activated, JCB:
- Identifies raw, untranslated strings in compiled or blueprint code
- Automatically replaces them with language constants (e.g. COM_MYCOMPONENT_SUBMIT)
- Injects these keys into your componentโs .ini language files
- Maintains a map between the original text and the generated constant
This helps enforce best practices for multilingual readiness, even when components were not originally built with translation in mind.
How It Works
During the build or scan phase, JCB parses:
- Layout files (.php)
- Template files
- Custom snippets and injected code blocks
Text strings not already inside JText::_()
, JText::sprintf()
, or similar are flagged.
JCB assigns a language key such as:
COM_EXAMPLE_HELLO_WORLD = "Hello World"
This constant is added to the language file and the original string replaced in code with:
JText::_('COM_EXAMPLE_HELLO_WORLD')
The relationship between the original and translated string is tracked in metadata for traceability and reuse.
This reverse mapping ensures your project becomes translatable โ even late in the development cycle.
When to Use It
- You inherited a non-translatable JCB component with hardcoded labels
- You're converting a legacy project to support multiple languages
- You want to avoid manually replacing dozens or hundreds of text strings
- You're preparing a component for distribution on the Joomla Extension Directory (JED)
Benefits
- ๐ Multilingual-Ready Instantly
Convert previously static components into fully translatable interfaces. - ๐ฆ Clean Joomla Compliance
Replaces hardcoded values with proper JText:: constants and .ini files. - โฑ Save Time on Manual Rewrites
Ideal for retrofitting old views or imported HTML templates. - ๐ง Smart Auto-Mapping
JCB uses component-specific prefixes and camel-case key patterns for clean results.
Best Practices
- Review auto-generated language keys after compilation
- Use JCBโs Excel export/import for translating new keys
- Enable this feature before first major multilingual deployment
- Combine with Language String Auto-Indexing to keep strings up-to-date
Summary
Automatically extract and convert static text strings in your layouts, templates, and snippets into Joomla-compliant language constants. This reverse mapping allows you to make your component translatable without manually rewriting your interface text โ greatly accelerating multilingual development.