๐งฉ 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
Template-Based File Creation
Create custom file structures using dynamic templates โ compile-ready, logic-aware, and fully reusable.
What Is Template-Based File Creation?
Template-Based File Creation in JCB allows you to define your own PHP, XML, INI, JS, CSS, or HTML files using dynamic templates โ then have those files automatically generated as part of the componentโs compiled output.
Templates can include custom logic, placeholders, Joomla data references, insert/replace tags, and even embedded PHP snippets. This lets you automate the creation of custom logic files, helper classes, JavaScript libraries, custom scripts, documentation, or anything else you want included in your component.
Rather than manually managing extra files outside of JCB, template-based files let you embed the logic inside your blueprint โ with full versioning, visibility, and round-trip support.
Key Features
- ๐งฉ Define Your Own Files: Create template-based files of any format (e.g. .php, .xml, .js, .json, .ini, .md, .txt). You define:
- The filename (can use placeholders)
- The relative folder path in the component
- The file contents (as a JCB template/snippet)
- ๐ง Dynamic Placeholder System: Templates support:
- Joomla Powers (JPK)
- Custom variables
- Field/View metadata
- Entity IDs
- Tags and insert/replace hooks
- ๐ Round-Trip Friendly: Files can include insert/replace tags for future syncing back into JCB.
- ๐ Organized into Repositories: Templates are stored in JCBโs internal repository system and reusable across projects.
- ๐๏ธ Compile-Time Control: Conditionally include files (e.g., only if a field exists or for a specific Joomla version).
- ๐งฐ Linked to Layouts, Snippets, and Admin Views: Associate templates with:
- Custom admin/site views
- Layouts and rendering logic
- Helper or service classes
- Language or install scripts
- ๐ Supports Comments, Metadata, and Versioning: Track changes and generate build reports for created/updated files.
Use Cases
- Create a custom API helper (e.g.,
ApiHelper.php
) - Include a
version.txt
orchangelog.md
file in your component - Add a JSON config file for a JS library
- Generate an install script that adjusts Joomla core settings
- Build a manifest fragment dynamically based on fields
- Compile a language file for a custom CLI command
How to Use Template-Based File Creation
- Go to Components โ JCB โ Templates (or Snippets).
- Create a new file template:
- Assign a name
- Define the file path (e.g.
/helpers/myhelper.php
) - Write the file content using placeholders and logic
- Link the template to:
- A View, Layout, or Admin View
- Or set it to โGlobalโ for all builds
- Compile the component.
- The file will be generated into the target directory inside the compiled ZIP.
๐ง Tip: Use the JCB Snippets system to inject repeated code blocks into your templates dynamically.
Conclusion
Template-Based File Creation is a powerful way to embed advanced logic, structure, and automation into your Joomla components โ all from within JCB. By defining your own files as templates, you gain complete control over your output while keeping everything versioned, reusable, and round-trip compatible.