๐งฉ 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
Language String Auto-Indexing
Automatically track, index, and manage all language strings used throughout your component โ without manual intervention.
What Is Language String Auto-Indexing?
Language String Auto-Indexing refers to JCBโs ability to:
- Scan templates, layouts, views, fields, and snippets for language constants (e.g., COM_MYCOMPONENT_SOMETHING)
- Detect usage and ensure entries exist in the relevant .ini language files
- Maintain consistency between your componentโs UI and multilingual support
- Minimize missing language string errors on frontend or backend
This indexing is done at compile-time, ensuring performance and eliminating the need for manual tracking of every constant.
How It Works in JCB
During compilation, JCB:
- Parses all fields, views, layouts, templates, and snippets.
- Searches for constants wrapped in
JText::_()
,JText::script()
, or other Joomla translation calls. - If a key is missing in the .ini files, it is:
- Added to the relevant language file (e.g., en-GB.com_example.ini)
- Given a default value (can be customized later)
- The language strings are grouped by source (field, view, template, etc.) to improve traceability.
Optionally, JCB supports export/import of all language strings via Excel for bulk management.
Benefits
- ๐ซ No Missing Language Keys
Prevents blank text or errors caused by untranslated constants. - ๐ Auto-Syncs Across Versions
Keeps your multilingual .ini files up-to-date on every compile. - ๐ Centralized String Management
Easily find where a language string is used โ improves maintenance and translation workflows. - ๐ Works With Per-Field Control
Complements per-field language settings for granular multilingual UI development. - ๐ผ Excel Workflow Support
Export/import your entire language map as a spreadsheet โ great for translators.
Use Cases
- Building multilingual Joomla components that evolve over time
- Automating translation workflows without extra tools
- Ensuring string consistency across reused fields, templates, and views
- Avoiding hardcoded values in templates or layouts
Best Practices
- Use language constants for all UI text (not hardcoded strings)
- Regularly export strings for translation and review
- Customize auto-generated default values after first compile
- Review logs to catch any unused or deprecated strings
Summary
JCBโs Language String Auto-Indexing feature scans your entire component during compilation to detect any language strings (JText constants) in use. It automatically collects, registers, and maintains them in the appropriate language files, ensuring your multilingual content stays synchronized and accurate across every build.