Files
MokoCassiopeia/CHANGELOG.md
Jonathan Miller c99eba5c01 chore(release): v03.09.03 — search 3-col layout, version sync
Search position now 25% width (3 cols), menu fills remaining space.
All VERSION headers synced to 03.09.03 across README, docs, manifests.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 18:24:20 -05:00

30 KiB

Changelog — MokoCassiopeia (VERSION: 03.09.03)

All notable changes to the MokoCassiopeia Joomla template are documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased] - 2026-04-02

Added

  • Favicon configuration — New "Favicon" tab in template config; upload a PNG and all favicon sizes are auto-generated via PHP GD (ICO, Apple Touch Icon 180px, Android Chrome 192/512px, site.webmanifest)
  • Module overrides — 11 new default.php layout overrides for Joomla core modules: mod_custom, mod_articles_latest, mod_articles_popular, mod_articles_news, mod_articles_category, mod_breadcrumbs, mod_footer, mod_login, mod_finder, mod_tags_popular, mod_tags_similar, mod_related_items
  • Module title support — All module overrides respect $module->showtitle, header_tag, header_class, and moduleclass_sfx parameters
  • Module CSS — BEM-scoped styles for module titles, article lists, tag badges, search forms, login forms, breadcrumbs, and footer content
  • Hero card variables — Full variable-driven hero system: --hero-card-bg, --hero-card-color, --hero-card-overlay, --hero-card-border-radius, --hero-card-padding-x/y, --hero-card-max-width, plus --hero-alt-card-* for secondary variant
  • Hero mobile breakpoint — Photo background hidden on mobile (≤767.98px), hero card becomes full-bleed (100dvh, no border-radius)
  • CSS fallback values — 1365 var() calls in template.css now include inline fallback values
  • Card border-radius.card now has .25rem fallback on var(--card-border-radius)
  • Usage section in README — Added missing "Usage" section required by MokoStandards

Changed

  • Button backgrounds--btn-bg: transparent changed to var(--body-bg) in dark and light themes
  • Offcanvas close button.offcanvas-header .btn-close now gets background-color from --offcanvas-bg
  • Custom template sync — Both dark.custom.css and light.custom.css now contain all variables from their standard counterparts (was missing 223 variables)
  • Overlay layer — Added --hero-overlay-bg-position and --hero-overlay-bg-size variables
  • Legacy CSS cleanup — Removed vendor prefixes (-webkit-box, -ms-flexbox) from .overlay rules, replaced with modern flexbox

Removed

  • FILE INFORMATION headers — Stripped DEFGROUP/INGROUP/PATH/VERSION/BRIEF metadata from all PHP, CSS, JS, INI, and HTML files (kept in XML and README per policy)
  • Mobile overrides — Deleted 26 mobile.php layout files and their empty parent directories
  • Joomla-specific gitignore entries — Removed ~700 lines of Joomla CMS core paths from .gitignore (not applicable to a template repository)

Fixed

  • CI: composer install — Workflow standards-compliance.yml now conditionally runs composer install only when composer.json exists
  • CI: YAML syntax — Fixed invalid YAML in auto-update-sha.yml caused by multiline commit message in run block

[03.09.02] - 2026-03-26

Added - Hero Variant System & Block Color System

Hero Variants

  • .hero#primary and .hero#secondary CSS variant system for visually distinct hero treatments
  • Shared .hero base class with background-size: cover, border-radius: .5rem, and overflow: hidden
  • Six new CSS variables (--hero-primary-bg-color, --hero-primary-overlay, --hero-primary-color, and secondary equivalents)
  • Light and dark mode defaults in custom palette templates

Block Color System

  • Automatic :nth-child() slot palette for top-a, top-b, bottom-a, bottom-b module positions
  • Four color slots (--block-color-1 through --block-color-4) with matching text variables
  • Named per-module overrides: #block-highlight, #block-cta, #block-alert
  • ID specificity wins over :nth-child() — no !important needed

Files Modified

  • src/media/css/template.css — hero variant rules, block color :nth-child() rules, named override rules
  • src/media/css/theme/light.standard.css — hero and block color variables (light standard)
  • src/media/css/theme/dark.standard.css — hero and block color variables (dark standard)
  • src/templates/light.custom.css — hero and block color variables (light custom starter)
  • src/templates/dark.custom.css — hero and block color variables (dark custom starter)
  • src/templateDetails.xml — Theme Preview tab, hero/block note fields, scriptfile registration, version bump to 03.09.02
  • src/language/en-GB/tpl_mokocassiopeia.ini — language strings for new admin fields (British English)
  • src/language/en-US/tpl_mokocassiopeia.ini — language strings for new admin fields (American English)
  • docs/CSS_VARIABLES.md — full variable reference for both systems, sync script documentation
  • CHANGELOG.md — this entry

Files Added

  • src/templates/theme-test.html — Bootstrap-style test page with branded showcase, CSS variable swatches, hero demos, block color demos, and color test image
  • src/script.php — Joomla install/update lifecycle script (runs CSS variable sync on upgrade, checks PHP/Joomla minimum versions)
  • src/sync_custom_vars.php — CLI/library utility that detects missing CSS variables in user custom palettes and injects them
  • src/templates/brand-showcase.html — Interactive color system gradients with hover pixel sampler, Bootstrap component showcase

Variable Audit

  • All 20 hero/block variables confirmed present in all 4 theme files (light/dark standard + custom)
  • No duplicate variable declarations found across any theme file
  • --gutter-x references in template.css are self-scoped to grid containers (standard Bootstrap 5 behavior, not a :root variable)

[03.08.03] - 2026-02-27

Added - Main Menu Collapsible Dropdown Override

New feature: Added responsive "Main Menu" mod_menu override with Bootstrap 5 collapsible dropdown functionality.

What's New

  • Main Menu module override with full Bootstrap 5 responsive navbar
  • Collapsible hamburger menu for mobile devices
  • Multi-level dropdown support with hover on desktop, tap on mobile
  • WCAG 2.1 compliant touch targets (48px on mobile, 44px on desktop)
  • BEM naming convention: .mod-menu-main__*
  • Appears as "Mainmenu" layout option in Joomla admin module settings

Files Added

  • src/templates/html/mod_menu/mainmenu.php - Main layout with Bootstrap navbar
  • src/templates/html/mod_menu/mainmenu_component.php - Component menu items
  • src/templates/html/mod_menu/mainmenu_heading.php - Heading menu items
  • src/templates/html/mod_menu/mainmenu_separator.php - Separator menu items
  • src/templates/html/mod_menu/mainmenu_url.php - URL menu items
  • src/templates/html/mod_menu/index.html - Security file

Features

  • Bootstrap 5 Navbar: Uses Bootstrap's native navbar-nav structure
  • Collapsible on Mobile: Hamburger menu with smooth collapse animation
  • Dropdown Menus: Multi-level dropdown support with caret indicators
  • Responsive Breakpoints: Mobile-first design adapting at 768px and 992px
  • Touch-Friendly: 48px minimum touch targets on mobile
  • Accessible: ARIA labels and keyboard navigation support
  • Active States: Visual indicators for current and active menu items
  • Alternative Layout: Named mainmenu.php (not default.php) to appear as selectable layout option in Joomla admin

CSS Architecture

  • 200+ lines of responsive CSS in template.css
  • BEM naming: .mod-menu-main, .mod-menu-main__list, .mod-menu-main__link
  • CSS variables integration for colors and borders
  • Hover effects on desktop, tap effects on mobile
  • Smooth transitions and animations

Module Count Update

  • Before: 16 module overrides
  • After: 17 module overrides (added mod_menu "Main Menu")
  • Component overrides: Still 7 (unchanged)

Removed - mod_search Override

Cassiopeia approach: Removed mod_search override to align with Cassiopeia template philosophy of not overriding standard Joomla modules.

Reason for Removal

  • mod_search is a standard Joomla core module
  • Following Cassiopeia template approach: use core layouts for standard modules
  • Prevents potential language loading issues
  • Ensures compatibility with future Joomla updates
  • Core mod_search already includes responsive design and accessibility features

Files Removed

  • src/templates/html/mod_search/default.php - Custom search module layout
  • src/templates/html/mod_search/index.html - Security file

Module Count Update (After Removal)

  • Before: 17 module overrides
  • After: 16 module overrides (removed mod_search)
  • Component overrides: Still 7 (unchanged)

Removed - Documentation Cleanup

Documentation policy: Removed all markdown files from src/templates/html/ directory. All documentation belongs in docs/ folder only.

Files Removed (9 markdown files)

  • src/templates/html/STANDARD_MODULES_README.md
  • src/templates/html/INDUSTRY_MODULES_README.md
  • src/templates/html/VIRTUEMART_MODULES_README.md
  • src/templates/html/mod_virtuemart_cart/README.md
  • src/templates/html/mod_virtuemart_category/README.md
  • src/templates/html/mod_virtuemart_currencies/README.md
  • src/templates/html/mod_virtuemart_manufacturer/README.md
  • src/templates/html/mod_virtuemart_product/README.md
  • src/templates/html/mod_search/README.md

Note: All module override documentation is consolidated in docs/MODULE_OVERRIDES.md. The src/templates/html/ directory now contains only PHP override files and index.html security files.

Note: Unlike the previously removed mod_menu override (v03.08.01), this new "Main Menu" override is properly structured based on Joomla core layouts and Bootstrap 5, ensuring language strings load correctly and menu functionality works as expected. The layout is named mainmenu.php (not default.php) to appear as an alternative layout option "Mainmenu" in the Joomla admin module dropdown selector, preserving Joomla's core default menu layout.

[03.08.02] - 2026-02-27

Removed - Fix Language Loading in All Module Overrides

Critical fix: Removed standard Joomla module overrides to fix language string loading issues. Following Cassiopeia template approach.

Problem

  • Default language strings not loading in module overrides (mod_breadcrumbs, mod_login, mod_articles_latest)
  • Language constants displayed instead of translated text (e.g., "MOD_LOGIN_VALUE_USERNAME" instead of "Username")
  • Custom overrides interfered with Joomla's module initialization and language loading process

Solution - Cassiopeia Approach

  • Removed standard Joomla module overrides:
    • src/templates/html/mod_breadcrumbs/ (2 files)
    • src/templates/html/mod_login/ (2 files)
    • src/templates/html/mod_articles_latest/ (2 files)
  • Template now uses Joomla's core module layouts for standard modules
  • Language files load automatically via Joomla's module system
  • Custom styling can still be applied via CSS using module-specific classes
  • Retained third-party extension overrides where they add mobile-responsive value:
    • VirtueMart modules (5): mod_virtuemart_cart, _category, _currencies, _manufacturer, _product
    • Community Builder modules (2): mod_cblogin, mod_comprofilerOnline
    • Other extensions (9): mod_acymailing, mod_hikashop_cart, mod_k2_content, mod_kunena*, mod_osmembership, mod_search

Cassiopeia Template Philosophy

  • Cassiopeia (Joomla's default template) does NOT override standard module layouts
  • It relies on core Joomla module files and applies styling via CSS
  • Overrides are only created when structural changes are absolutely necessary
  • This ensures compatibility, automatic language loading, and easier maintenance

Module Count Update

  • Before: 19 module overrides
  • After: 16 module overrides
  • Removed: 3 standard Joomla modules (breadcrumbs, login, articles_latest)
  • Component overrides: Still 7 (unchanged)

Files Removed

  • src/templates/html/mod_breadcrumbs/default.php
  • src/templates/html/mod_breadcrumbs/index.html
  • src/templates/html/mod_login/default.php
  • src/templates/html/mod_login/index.html
  • src/templates/html/mod_articles_latest/default.php
  • src/templates/html/mod_articles_latest/index.html

Note: This follows Joomla best practices by using core layouts for standard modules. Styling is handled via CSS. Third-party extension overrides remain for mobile responsiveness.

[03.08.01] - 2026-02-27

Removed - Fix Breaking Overrides

Critical fix: Removed mod_menu override that was causing menu links to break and language strings not to load.

Problem

  • mod_menu override files (default.php, default_component.php, default_url.php) were attempting to load menu-specific layouts that don't exist in the template
  • This broke Joomla's core menu rendering system
  • Menu links were not functional
  • Language strings were not loading properly in menus

Solution

  • Removed entire src/templates/html/mod_menu/ directory (4 files)
  • Template now uses Joomla's default menu rendering
  • Custom styling can still be applied via CSS using .mod-menu class
  • All menu functionality restored to standard Joomla behavior

Documentation Updates

  • Updated MODULE_OVERRIDES.md: Changed count from 20 to 19 module overrides, removed mod_menu section, added note about removal
  • Updated STANDARD_MODULES_README.md: Removed mod_menu documentation, renumbered remaining modules, updated file structure
  • Updated testing checklists to remove mod_menu references
  • Added clarification: MokoCassiopeia is a standalone template extension (not a package)
  • Updated updates.xml to version 03.08.01

Files Removed

  • src/templates/html/mod_menu/default.php
  • src/templates/html/mod_menu/default_component.php
  • src/templates/html/mod_menu/default_url.php
  • src/templates/html/mod_menu/index.html

Note: This is a patch release that removes problematic overrides to restore core functionality. Menu styling via CSS remains intact. MokoCassiopeia remains a standalone Joomla template extension (type="template"), not bundled as a package.

[03.08.00] - 2026-02-22

Added - Community Builder Component Overrides

Minor version bump adding 4 Community Builder component view overrides to complement the existing CB module overrides (mod_cblogin, mod_comprofilerOnline).

Community Builder Components (4 views)

  • com_comprofiler/userprofile: User profile display with avatar, tabs, and custom fields in responsive layout
  • com_comprofiler/userslist: User directory with search functionality and responsive grid (1-3 columns)
  • com_comprofiler/registers: User registration form with multi-step fieldsets, validation, captcha support
  • com_comprofiler/login: Login page with remember me checkbox, registration and password recovery links

CSS Architecture (600+ lines)

  • Mobile-first responsive design with Bootstrap breakpoints (576px, 768px, 992px)
  • BEM naming convention (.cb-profile__, .cb-userslist__, .cb-register__, .cb-login__)
  • Integrated with template CSS variables for consistent theming
  • 48px touch targets on mobile, 44px on desktop (WCAG 2.1 Level AA)
  • 16px input font size on mobile to prevent iOS zoom
  • Responsive grids adapting from 1 column (mobile) to 2-3 columns (desktop)

Accessibility Features

  • Full ARIA labels and descriptions for screen readers
  • Semantic HTML5 structure with proper landmarks
  • Keyboard navigation support throughout
  • Required field indicators with visually-hidden labels
  • Focus states with visible outlines

Security Best Practices

  • Proper output escaping with htmlspecialchars() and ENT_QUOTES
  • _JEXEC security checks in all PHP files
  • index.html protection files in all directories (6 files)
  • CSRF token support in forms
  • Input validation and error display

Technical Details

  • Files Added: 11 (4 component view files + 6 index.html + 1 root index.html)
  • CSS Lines Added: 600+ lines of responsive styles
  • PHP Validation: All files pass syntax validation
  • Component Views: userprofile, userslist, registers, login
  • Documentation: Ready for MODULE_OVERRIDES.md update

[03.07.00] - 2026-02-22

Added - Mobile-Responsive Module & Component Overrides

This major release introduces 20 mobile-responsive module overrides and 3 component overrides designed to enhance the mobile user experience across standard Joomla, VirtueMart, Community Builder, and popular third-party extensions.

Search Module

  • mod_search: Mobile-responsive search with multiple button positions (left, right, top, bottom), 48px touch targets, 16px input font to prevent iOS zoom

VirtueMart E-Commerce Modules (5 modules)

  • mod_virtuemart_cart: Shopping cart with responsive product cards, remove buttons, price display
  • mod_virtuemart_product: Product showcase with responsive grid (1-4 columns), hover effects, ratings
  • mod_virtuemart_currencies: Currency selector dropdown with accessible styling
  • mod_virtuemart_category: Category navigation with hierarchical display, product counts
  • mod_virtuemart_manufacturer: Manufacturer/brand display with responsive grid (2-4 columns)
  • VIRTUEMART_MODULES_README.md: Comprehensive master documentation for all VirtueMart overrides

Standard Joomla & Community Builder Modules (6 modules)

  • mod_menu: Main navigation with multiple layout files (default, component, URL), responsive horizontal/vertical layouts
  • mod_breadcrumbs: Breadcrumb navigation with Schema.org markup for SEO
  • mod_login: User login/logout form with 2FA support, remember me checkbox
  • mod_articles_latest: Latest articles with responsive cards, metadata, featured badges
  • mod_cblogin: Community Builder login with avatar display, profile links
  • mod_comprofilerOnline: CB online users with avatar grid, online status indicators
  • STANDARD_MODULES_README.md: Comprehensive master documentation for standard module overrides

Industry Extension Modules (8 modules + 2 components)

  • mod_k2_content: K2 content display with responsive grid (1-3 columns), featured images, metadata
  • mod_acymailing: Newsletter subscription form with validation, GDPR compliance
  • mod_hikashop_cart: HikaShop shopping cart with product list, quantity adjustment
  • mod_kunenalatest: Kunena forum latest posts with excerpts, avatars, reply counts
  • mod_kunenalogin: Kunena forum login with user avatar, statistics, quick login
  • mod_kunenasearch: Kunena forum search with multiple button positions
  • mod_kunenastats: Kunena forum statistics with visual cards, member/topic counts
  • mod_osmembership: OS Membership Pro plans with pricing cards, feature lists, badges
  • com_kunena/category: Kunena forum category list component view
  • com_osmembership/plans: OS Membership Pro responsive pricing table component view
  • INDUSTRY_MODULES_README.md: Comprehensive master documentation for industry extensions

CSS & Styling

  • Added 2,000+ lines of mobile-responsive CSS to src/media/css/template.css
  • Four dedicated CSS sections for organized styling:
    • MOD_SEARCH MOBILE RESPONSIVE STYLES
    • VIRTUEMART MODULE MOBILE RESPONSIVE STYLES
    • STANDARD JOOMLA & COMMUNITY BUILDER MODULE STYLES
    • INDUSTRY EXTENSION MODULE STYLES
    • ADDITIONAL KUNENA & MEMBERSHIP PRO MODULE STYLES
  • BEM naming convention for all CSS classes (.mod-search__button, .mod-vm-product__grid, etc.)
  • Integration with existing template CSS variables for seamless theming
  • Responsive grids with Bootstrap-aligned breakpoints (sm, md, lg, xl, xxl)

Documentation

  • docs/MODULE_OVERRIDES.md: Comprehensive guide covering all 23 overrides
    • Feature descriptions and specifications
    • CSS architecture and customization guide
    • Accessibility features documentation
    • Troubleshooting guide
    • Best practices and usage examples
  • Individual README.md files for VirtueMart module groups (5 modules)
  • Master README files for each category (VirtueMart, Standard, Industry)
  • Security index.html files in all override directories (23 files)

Key Features Across All Overrides

Mobile-First Responsive Design

  • Touch targets: 48px on mobile, 44px on desktop (WCAG 2.1 compliant)
  • 16px minimum input font size on mobile (prevents iOS zoom)
  • Responsive layouts: 1-4 columns based on screen size
  • Mobile-first CSS with progressive enhancement
  • Bootstrap-aligned breakpoints: 576px, 768px, 992px, 1200px, 1400px

Accessibility

  • Full ARIA labels and descriptions on all interactive elements
  • Keyboard navigation support throughout
  • Screen reader compatible with semantic HTML5
  • WCAG 2.1 Level AA compliance
  • Proper heading hierarchy and focus management
  • Alternative text for images and icons

Security

  • Proper output escaping with Joomla escapeHtml()
  • _JEXEC security checks in all PHP files
  • index.html protection files in all directories
  • Input validation where applicable
  • CSRF token support in forms

Maintainability

  • BEM naming convention for CSS classes
  • Consistent code structure across all overrides
  • Comprehensive inline documentation
  • Modular, reusable components
  • Integration with template CSS variables

Changed

  • Version: Updated to 03.07.00 across all files

Technical Details

  • Total Files: 66 new files created
    • 42 PHP override files
    • 23 index.html security files
    • 1 comprehensive MODULE_OVERRIDES.md documentation
  • CSS Added: 2,000+ lines of responsive styles
  • Documentation: 15,000+ words across all README files

Migration Notes

  • All overrides are opt-in and non-breaking
  • Existing sites will continue to work without changes
  • Overrides automatically apply when modules are used
  • No database changes or migration required
  • Custom overrides can coexist with template overrides

Testing

  • All PHP syntax validated
  • Code review completed (all issues resolved)
  • CodeQL security scan passed
  • Responsive design tested across breakpoints
  • Accessibility validated with ARIA compliance

[03.06.03] - 2026-01-30

Added

  • Templates Directory: Created /templates/ directory with ready-to-use color palette templates
    • colors_custom_light.css - Comprehensive light mode color template with all available variables
    • colors_custom_dark.css - Comprehensive dark mode color template with all available variables
  • CSS Variables Documentation: Added complete CSS variables reference guide (docs/CSS_VARIABLES.md)
    • Complete list of all customizable CSS variables
    • Organized by category (colors, typography, borders, etc.)
    • Usage examples and tips for customization
    • Light and dark mode variable differences documented

Changed

  • README: Updated title to "README - MokoCassiopeia (VERSION: 03.09.03)"
  • README: Fixed custom color variables instructions with correct file paths
  • README: Updated example CSS variables to use actual template variable names (e.g., --color-link instead of --cassiopeia-color-link)
  • README: Added note that custom color files are excluded from version control via .gitignore
  • README: Enhanced Custom Color Palettes section with step-by-step instructions
  • README: Added link to CSS Variables documentation for complete reference
  • TOC CSS: Updated bootstrap-toc.css to use template color variables for proper theme integration
  • Version: Updated version to 03.06.03 across all files

Documentation

  • docs/README.md: Added CSS Variables Reference to developer documentation section
  • docs/README.md: Updated project structure to include /templates/ directory
  • docs/README.md: Updated version to 03.06.03
  • Clarified that colors_custom.css files are gitignored to prevent fork-specific customizations from being committed

[03.06.02] - 2026-01-30

Major Rebrand

This release includes a complete rebrand from "Moko-Cassiopeia" (hyphenated) to "MokoCassiopeia" (camelCase).

Changed

  • Naming Convention: Changed template identifier from moko-cassiopeia to mokocassiopeia across all files
  • Display Name: Updated from "Moko-Cassiopeia" to "MokoCassiopeia" in all documentation and language files
  • Language Constants: Renamed all language keys from TPL_MOKO-CASSIOPEIA_* to TPL_MOKOCASSIOPEIA_*
  • Language Files: Renamed from tpl_moko-cassiopeia.* to tpl_mokocassiopeia.* (4 files)
  • Media Paths: Updated from media/templates/site/moko-cassiopeia/ to media/templates/site/mokocassiopeia/
  • Repository URLs: Updated all references to use MokoCassiopeia casing
  • Template Element: Changed Joomla extension element name from moko-cassiopeia to mokocassiopeia
  • Documentation: Updated all markdown files, XML manifests, and code comments

Removed

  • Default Assets: Removed logo.svg and favicon.ico to allow clean installations
  • Template Overrides: Removed all template override files (48 files, ~4,500 lines)
    • Removed src/templates/html/ folder entirely
    • Removed overrides for: com_content, com_contact, com_engage, mod_menu, mod_custom, mod_gabble, layouts/chromes
    • Template now inherits all rendering from Joomla Cassiopeia defaults
    • Updated templateDetails.xml to remove html folder reference

Breaking Changes

⚠️ Important: This release contains breaking changes:

  • Existing installations will see template name change in Joomla admin
  • Custom code referencing old language constants (TPL_MOKO-CASSIOPEIA_*) will need updates
  • Custom code referencing old media paths will need updates
  • Sites relying on custom template overrides will revert to Cassiopeia defaults
  • Extension element name changed (may require reinstallation in some cases)

Migration Notes

  • Backup your site before upgrading
  • Review any custom code for references to old naming convention
  • Test thoroughly after upgrade, especially if using custom overrides

[03.06.00] - 2026-01-28

Changed

  • Updated version to 03.06.00 across all files
  • Standardized version numbering format

[03.05.01] - 2026-01-09

Added

  • Added dependency-review.yml workflow for dependency vulnerability scanning
  • Added standards-compliance.yml workflow for MokoStandards validation
  • Added .github/dependabot.yml configuration for automated security updates
  • Added docs/README.md as documentation index

Changed

  • Removed custom codeql-analysis.yml workflow (repository uses GitHub's default CodeQL setup)
  • Enforced repository compliance with MokoStandards requirements
  • Improved security posture with automated scanning and dependency management

[03.05.00] - 2026-01-04

Added

  • Created .github/workflows directory structure

Changed

  • Replaced ./CODE_OF_CONDUCT.md from MokoStandards
  • Replaced ./CONTRIBUTING.md from MokoStandards
  • TODO split to own file

[03.01.00] - 2025-12-16

Added

  • Created .github/workflows/ directory for GitHub Actions

[03.00.00] - 2025-12-09

Changed

  • Copyright Headers updated to MokoCodingDefaults standards
  • Fixed ./templates/mokocassiopeia/index.php color style injection
  • Upgraded Font Awesome 6 to Font Awesome 7 Free
  • Added Font Awesome 7 Free style fallback

Removed

  • Removed ./CODE_OF_CONDUCT.md (replaced with MokoStandards version)
  • Removed ./CONTRIBUTING.md (replaced with MokoStandards version)

[02.01.05] - 2025-09-04

Changed

  • Repaired template.css and colors_standard.css

Removed

  • Removed vmbasic.css

[02.00.00] - 2025-08-30

Added - Dark Mode Toggle

  • Frontend toggle switch included in template
  • JavaScript handles switching between light/dark modes
  • Dark mode CSS rules applied across template styles
  • Automatic persistence of user choice (via localStorage)
  • Admins can override default mode in template settings

Added - Header Parameters Update

  • Added logo parameter support in template settings
  • Updated metadata & copyright header

Added - Expanded TOC (Table of Contents)

  • Automatic TOC injection when enabled
  • User selects placement via article > options > layout (toc-left or toc-right)

Changed

  • Cleaned up index.php by removing skip-to-content duplicate calls
  • Consolidated JavaScript asset loading (ensuring dark-mode script is loaded correctly from external JS file)
  • Streamlined CSS for toggle switch, ensuring it inherits Bootstrap/Cassiopeia defaults
  • General accessibility refinements in typography and color contrast
  • Fixed missing logo param in header output
  • Corrected stylesheet inconsistencies between Bootstrap 5 helpers and template overrides
  • Patched redundant calls in script includes

[01.00.00] - 2025-01-01

Added - Initial Public Release

  • Font Awesome 6 integration (later upgraded to FA7)
  • Bootstrap 5 helpers (grid, utility classes)
  • Automatic Table of Contents (TOC) utility
  • Moko Expansions: Google Tag Manager / GA4 hooks
  • Built on top of Joomla's default Cassiopeia template
  • Minimal core template overrides for maximum upgrade compatibility

Version Format

This project uses semantic versioning: MAJOR.MINOR.PATCH

  • MAJOR: Incompatible API changes or major overhauls
  • MINOR: New features, backwards-compatible
  • PATCH: Bug fixes, backwards-compatible