diff --git a/.gitignore b/.gitignore index 205e9a0..abfdb17 100644 --- a/.gitignore +++ b/.gitignore @@ -138,6 +138,7 @@ package-lock.json # PHP / Composer tooling # ============================================================ vendor/ +!src/media/vendor/ composer.lock *.phar codeception.phar diff --git a/CHANGELOG.md b/CHANGELOG.md index 49e9063..cc1c912 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,19 +6,63 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site - INGROUP: Moko-Cassiopeia.Documentation + INGROUP: MokoCassiopeia.Documentation PATH: ./CHANGELOG.md - VERSION: 03.06.00 - BRIEF: Changelog file documenting version history of Moko-Cassiopeia + VERSION: 03.06.02 + BRIEF: Changelog file documenting version history of MokoCassiopeia --> -# Changelog — Moko-Cassiopeia (VERSION: 03.06.00) +# Changelog — MokoCassiopeia (VERSION: 03.06.02) + +All notable changes to the MokoCassiopeia Joomla template are documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [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 -## [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 -## [03.05.01] 2026-01-09 ### Added - Added `dependency-review.yml` workflow for dependency vulnerability scanning - Added `standards-compliance.yml` workflow for MokoStandards validation @@ -27,71 +71,91 @@ ### Changed - Removed custom `codeql-analysis.yml` workflow (repository uses GitHub's default CodeQL setup) - -### Changed - Enforced repository compliance with MokoStandards requirements - Improved security posture with automated scanning and dependency management -## [03.05.00] 2026-01-04 -- Created `.github/workflows` +## [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 -- Created `.github/workflows/` +## [03.01.00] - 2025-12-16 -## [03.00] 2025-12-09 -### Removed - - `./CODE_OF_CONDUCT.md` - - `./CONTRIBUTING.md` - -### Updated - - Copyright Headers to MokoCodingDefaults standards - - Fixed `./templates/moko-cassiopeia/index.php` color style injection - - Upgraded `FontAwesome 6` to `FontAwesome 7 Free` - - Added `Font Awesome 7 Free` style fallback - -## [02.01.05] 2025-09-04 -- Removed vmbasic.css -- Repaired temaplte.css and colors_standard.css - -## [2.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). +- Created `.github/workflows/` directory for GitHub Actions -* **Header Parameters Update** +## [03.00.00] - 2025-12-09 - * Added **logo parameter support** in template settings. - * Updated metadata & copyright header. +### 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 -* **Expanded TOC (Table of Contents)** +### Removed +- Removed `./CODE_OF_CONDUCT.md` (replaced with MokoStandards version) +- Removed `./CONTRIBUTING.md` (replaced with MokoStandards version) - * Automatic TOC injection when enabled. - * User selects placement via article > options > layout (`toc-left` or `toc-right`). +## [02.01.05] - 2025-09-04 -### Updated +### Changed +- Repaired template.css and colors_standard.css -* 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. +### Removed +- Removed vmbasic.css -## 01.00.00 +## [02.00.00] - 2025-08-30 -* **Initial Public Release** with: +### 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 - * Font Awesome 6 - * Bootstrap 5 helpers - * Automatic Table of Contents (TOC) utility - * Moko Expansions: Google Tag Manager / GA4 hooks +### Added - Header Parameters Update +- Added logo parameter support in template settings +- Updated metadata & copyright header -For the full development roadmap, visit: -[Moko-Cassiopeia Roadmap](https://mokoconsulting.tech/support/joomla-cms/moko-cassiopeia-roadmap) +### 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 + +--- + +## Links + +- **Full Roadmap**: [MokoCassiopeia Roadmap](https://mokoconsulting.tech/support/joomla-cms/mokocassiopeia-roadmap) +- **Repository**: [GitHub](https://github.com/mokoconsulting-tech/MokoCassiopeia) +- **Issue Tracker**: [GitHub Issues](https://github.com/mokoconsulting-tech/MokoCassiopeia/issues) + +## 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 diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 5f44283..8bd6171 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -7,18 +7,18 @@ # FILE INFORMATION DEFGROUP: Joomla.Template - INGROUP: Moko-Cassiopeia.Governance - REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia + INGROUP: MokoCassiopeia.Governance + REPO: https://github.com/mokoconsulting-tech/MokoCassiopeia FILE: CODE_OF_CONDUCT.md - VERSION: 03.06.00 - BRIEF: Contributor code of conduct for the Moko-Cassiopeia project. + VERSION: 03.06.02 + BRIEF: Contributor code of conduct for the MokoCassiopeia project. PATH: /CODE_OF_CONDUCT.md NOTE: This document defines behavioral expectations and enforcement processes. --> ## Code of Conduct -This Code of Conduct establishes expectations for behavior within the Moko-Cassiopeia project community. The objective is to maintain a professional, inclusive, and respectful environment aligned with open source governance best practices. +This Code of Conduct establishes expectations for behavior within the MokoCassiopeia project community. The objective is to maintain a professional, inclusive, and respectful environment aligned with open source governance best practices. ## Scope @@ -56,7 +56,7 @@ Project maintainers are responsible for: Instances of abusive, harassing, or otherwise unacceptable behavior may be reported through: -* Email: `hello@mokoconsulting.tech` with subject `CODE OF CONDUCT: Moko-Cassiopeia`. +* Email: `hello@mokoconsulting.tech` with subject `CODE OF CONDUCT: MokoCassiopeia`. Reports should include relevant context, links, screenshots, or other supporting information. @@ -83,7 +83,7 @@ This project is managed from Tennessee, USA. This statement is informational and ## Metadata * **Document:** CODE_OF_CONDUCT.md -* **Repository:** [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) +* **Repository:** [https://github.com/mokoconsulting-tech/MokoCassiopeia](https://github.com/mokoconsulting-tech/MokoCassiopeia) * **Path:** /CODE_OF_CONDUCT.md * **Owner:** Moko Consulting * **Version:** 03.06.00 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a5079b5..ad19907 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,18 +7,18 @@ # FILE INFORMATION DEFGROUP: Joomla.Template - INGROUP: Moko-Cassiopeia.Governance - REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia + INGROUP: MokoCassiopeia.Governance + REPO: https://github.com/mokoconsulting-tech/MokoCassiopeia FILE: CONTRIBUTING.md - VERSION: 03.06.00 - BRIEF: Contribution guidelines for the Moko-Cassiopeia project. + VERSION: 03.06.02 + BRIEF: Contribution guidelines for the MokoCassiopeia project. PATH: /CONTRIBUTING.md NOTE: This document defines contribution workflow, standards, and governance alignment. --> ## Contributing -This document defines how to contribute to the Moko-Cassiopeia project. The goal is to ensure changes are reviewable, auditable, and aligned with project governance and release processes. +This document defines how to contribute to the MokoCassiopeia project. The goal is to ensure changes are reviewable, auditable, and aligned with project governance and release processes. ## Scope @@ -43,8 +43,8 @@ For first-time contributors: ```bash # Clone the repository -git clone https://github.com/mokoconsulting-tech/moko-cassiopeia.git -cd moko-cassiopeia +git clone https://github.com/mokoconsulting-tech/MokoCassiopeia.git +cd MokoCassiopeia ``` See [docs/QUICK_START.md](./docs/QUICK_START.md) for detailed setup instructions. @@ -130,7 +130,7 @@ Participation in this project is governed by the Code of Conduct. Unacceptable b ## Metadata * **Document:** CONTRIBUTING.md -* **Repository:** [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) +* **Repository:** [https://github.com/mokoconsulting-tech/MokoCassiopeia](https://github.com/mokoconsulting-tech/MokoCassiopeia) * **Path:** /CONTRIBUTING.md * **Owner:** Moko Consulting * **Version:** 03.06.00 diff --git a/GOVERNANCE.md b/GOVERNANCE.md index 22329d8..9b01d65 100644 --- a/GOVERNANCE.md +++ b/GOVERNANCE.md @@ -7,22 +7,22 @@ # FILE INFORMATION DEFGROUP: Joomla.Template - INGROUP: Moko-Cassiopeia.Governance - REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia + INGROUP: MokoCassiopeia.Governance + REPO: https://github.com/mokoconsulting-tech/MokoCassiopeia FILE: GOVERNANCE.md - VERSION: 03.06.00 - BRIEF: Project governance model, roles, and decision processes for Moko-Cassiopeia. + VERSION: 03.06.02 + BRIEF: Project governance model, roles, and decision processes for MokoCassiopeia. PATH: /GOVERNANCE.md NOTE: This document defines authority, decision making, and escalation paths. --> ## Governance Overview -This document defines the governance framework for the Moko-Cassiopeia project. The objective is to ensure clear ownership, predictable decision making, and accountable stewardship across development, releases, and community interaction. +This document defines the governance framework for the MokoCassiopeia project. The objective is to ensure clear ownership, predictable decision making, and accountable stewardship across development, releases, and community interaction. ## Project Ownership -Moko-Cassiopeia is owned and maintained by **Moko Consulting**. Final authority for project direction, releases, and policy enforcement resides with the project owner. +MokoCassiopeia is owned and maintained by **Moko Consulting**. Final authority for project direction, releases, and policy enforcement resides with the project owner. ## Roles and Responsibilities @@ -100,7 +100,7 @@ This project is managed from Tennessee, USA. This statement is informational and ## Metadata * **Document:** GOVERNANCE.md -* **Repository:** [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) +* **Repository:** [https://github.com/mokoconsulting-tech/MokoCassiopeia](https://github.com/mokoconsulting-tech/MokoCassiopeia) * **Path:** /GOVERNANCE.md * **Owner:** Moko Consulting * **Version:** 03.06.00 diff --git a/README.md b/README.md index 3776fbe..4f7a1e6 100644 --- a/README.md +++ b/README.md @@ -6,172 +6,484 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site - INGROUP: Moko-Cassiopeia.Documentation - REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia + INGROUP: MokoCassiopeia.Documentation + REPO: https://github.com/mokoconsulting-tech/MokoCassiopeia FILE: ./README.md - VERSION: 03.06.00 - BRIEF: Documentation for Moko-Cassiopeia template + VERSION: 03.06.02 + BRIEF: Documentation for MokoCassiopeia template --> -# Moko-Cassiopeia (VERSION: 03.06.00) +# MokoCassiopeia -A modern, lightweight enhancement layer for Joomla's Cassiopeia -template. -Moko-Cassiopeia adds **Font Awesome 7**, **Bootstrap 5** helpers, an -automatic **Table of Contents (TOC)** utility, and optional **Moko -Expansions** including **Google Tag Manager** and **Google Analytics -(GA4)** hooks---all while keeping core template overrides minimal and -upgrade-friendly. +**Version:** 03.06.02 +**A Modern, Lightweight Joomla Template Based on Cassiopeia** -## Table of Contents +[](https://www.gnu.org/licenses/gpl-3.0) +[](https://www.joomla.org) +[](https://www.php.net) -- [Features](#features) -- [Requirements](#requirements) -- [Quick Start](#quick-start) -- [Installation](#installation) -- [Configuration](#configuration) - - [Global Params](#global-params) - - [Font Awesome 6](#font-awesome-6) - - [Bootstrap 5 Helpers](#bootstrap-5-helpers) - - [Table of Contents](#table-of-contents) - - [Dark Mode Toggle](#dark-mode-toggle) - - [Soft Offline Mode](#soft-offline-mode) -- [Development](#development) -- [Changelog](#changelog) -- [Roadmap](#roadmap) - -## Features - -### Core Enhancements - -- Built on top of Joomla's default **Cassiopeia** template. -- **Font Awesome 6** integration. -- **Bootstrap 5** helpers (grid, utility classes). -- **Automatic TOC** insertion for articles (activated via layout - `toc-left` or `toc-right`). - -### Added in 2.0 - -- **Dark Mode Toggle** - - User-facing switch in the header. - - Persists preference with local storage. - - Admins can override default mode in template settings. -- **Improved Template Params** - - Configure logo, GTM container ID, and dark mode defaults - directly from template settings. - -### New in 2.1.5 (In Development) - -- **Soft Offline Mode** - - Keeps articles in specific categories available when the site is - offline. - - Example: legal or policy documents remain publicly viewable even - during maintenance. - - Admin can configure which categories remain accessible. - -## Requirements - -- Joomla **4.4.x** or **5.x** -- PHP **8.0+** -- MySQL/MariaDB compatible database - -## Quick Start - -1. Install `moko-cassiopeia.zip` via Joomla's Template Installer. -2. Set **Moko-Cassiopeia** as your default template. -3. Configure template options under **System → Site Templates → - Moko-Cassiopeia**. - -## Installation - -Upload and install through Joomla's extension manager. -If upgrading from a prior version, Joomla will safely overwrite files ---- no manual uninstall required. - -## Configuration - -### Global Params - -- **Logo**: Upload a custom site logo. -- **Color Scheme**: Toggle light/dark defaults. -- **Analytics/GTM**: Enable/disable optional expansions. - -### Custom Color Palettes - -Moko-Cassiopeia supports custom color schemes for both light and dark modes: - -- **Standard**: Default Joomla Cassiopeia colors -- **Alternative**: Alternative color palette -- **Custom**: Create your own custom colors by adding `colors_custom.css` files - -To use custom colors: -1. Create `src/media/css/colors/light/colors_custom.css` for light mode -2. Create `src/media/css/colors/dark/colors_custom.css` for dark mode -3. Define your CSS variables in these files (see existing `colors_standard.css` for reference) -4. Select "Custom" in template settings under **Variables & Palettes** - -### Font Awesome 7 - -- Fully integrated into Joomla's asset manager. -- No extra scripts required. - -### Bootstrap 5 Helpers - -- Adds extended utility classes and responsive tweaks. - -### Table of Contents - -- Select `toc-left` or `toc-right` in article **Options → Layout** to - insert TOC automatically. - -### Dark Mode Toggle - -- User-facing switch in the header. -- Remembers preference via local storage. -- Default behavior can be set in template settings. - -### Soft Offline Mode - -- Introduced in **2.1.5**. -- Allows articles in selected categories to remain viewable during - offline/maintenance mode. -- Useful for compliance, legal, or policy content. - -## Development - -For developers and contributors working on the moko-cassiopeia template: - -### Quick Start for Developers - -**New to the project?** See [Quick Start Guide](./docs/QUICK_START.md) for a 5-minute walkthrough. - -### Development Resources - -- **[Quick Start Guide](./docs/QUICK_START.md)** - Get up and running in 5 minutes -- **[Joomla Development Guide](./docs/JOOMLA_DEVELOPMENT.md)** - Testing, quality checks, and deployment -- **[Contributing Guide](./CONTRIBUTING.md)** - How to contribute - -### Available Tools - -- **Pre-commit Hooks**: Automatic validation before commits - -## Changelog - -See the [CHANGELOG.md](./CHANGELOG.md) for detailed version history. +MokoCassiopeia is a modern, lightweight enhancement layer built on top of Joomla's Cassiopeia template. It adds **Font Awesome 7**, **Bootstrap 5** helpers, an automatic **Table of Contents (TOC)** utility, advanced **Dark Mode** theming, and optional integrations for **Google Tag Manager** and **Google Analytics (GA4)**—all while maintaining minimal core template overrides for maximum upgrade compatibility. --- -## Metadata +## 📑 Table of Contents -* Maintainer: Moko Consulting Engineering -* Repository: [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) -* File: README.md -* Version: 3.0 -* Classification: Public Open Source Standards +- [Features](#-features) +- [Requirements](#-requirements) +- [Installation](#-installation) +- [Quick Start](#-quick-start) +- [Configuration](#️-configuration) +- [Theme System](#-theme-system) +- [Development](#-development) +- [Documentation](#-documentation) +- [Changelog](#-changelog) +- [Support](#-support) +- [Contributing](#-contributing) +- [Included Libraries](#-included-libraries) +- [License](#-license) -## Revision History +--- -| Date | Change Summary | Author | -| ---------- | ------------------------------------------------------------------- | ------------------------------- | -| 2026-01-05 | Initial publication of template documentation and feature overview. | Moko Consulting | -| 2026-01-05 | Fixed malformed markdown table formatting in revision history. | Jonathan Miller (@jmiller-moko) | +## ✨ Features + +### Core Enhancements + +- **Built on Cassiopeia**: Extends Joomla's default template with minimal overrides +- **Font Awesome 7**: Fully integrated into Joomla's asset manager with 2,000+ icons +- **Bootstrap 5**: Extended utility classes and responsive grid system +- **No Template Overrides**: Clean installation that inherits all Cassiopeia defaults +- **Upgrade-Friendly**: Minimal modifications ensure smooth Joomla updates + +### Advanced Theming + +- **Dark Mode Support**: Built-in light/dark mode toggle with system preference detection +- **Color Palettes**: Standard, Alternative, and Custom color schemes +- **Theme Persistence**: User preferences saved via localStorage +- **Theme Control Options**: Switch, radio buttons, or hidden controls +- **Auto Dark Mode**: Optional automatic dark mode based on time/system settings +- **Meta Tags**: Automatic color-scheme and theme-color meta tags + +### Developer Features + +- **Custom Code Injection**: Add custom HTML to `
` start/end +- **Drawer Sidebars**: Configurable left/right drawer positions with custom icons +- **Font Options**: Local and web fonts (Roboto, Fira Sans, Noto Sans) +- **Sticky Header**: Optional sticky navigation +- **Back to Top**: Floating back-to-top button + +### Analytics & Tracking + +- **Google Tag Manager**: Optional GTM integration with container ID configuration +- **Google Analytics**: Optional GA4 integration with measurement ID +- **Privacy-Friendly**: All tracking features are optional and easily disabled + +### Content Features + +- **Table of Contents**: Automatic TOC generation for long articles + - Placement options: `toc-left` or `toc-right` layouts + - Automatic heading extraction and navigation + - Responsive sidebar positioning + +--- + +## 📋 Requirements + +- **Joomla**: 4.4.x or 5.x +- **PHP**: 8.0 or higher +- **Database**: MySQL 5.7+ / MariaDB 10.2+ / PostgreSQL 11+ +- **Browser Support**: Modern browsers (Chrome, Firefox, Safari, Edge) + +--- + +## 📦 Installation + +### Via Joomla Extension Manager + +1. Download the latest `mokocassiopeia-{version}.zip` from [Releases](https://github.com/mokoconsulting-tech/MokoCassiopeia/releases) +2. In Joomla admin, navigate to **System → Install → Extensions** +3. Upload the ZIP file and click **Upload & Install** +4. Navigate to **System → Site Templates** +5. Set **MokoCassiopeia** as your default template + +### Via Git (Development) + +```bash +git clone https://github.com/mokoconsulting-tech/MokoCassiopeia.git +cd MokoCassiopeia +``` + +See [Development Guide](./docs/JOOMLA_DEVELOPMENT.md) for development setup. + +--- + +## 🚀 Quick Start + +### 1. Install the Template + +Install `mokocassiopeia.zip` via Joomla's Extension Manager. + +### 2. Set as Default + +Navigate to **System → Site Templates** and set **MokoCassiopeia** as default. + +### 3. Configure Template Options + +Go to **System → Site Templates → MokoCassiopeia** to configure: + +- **Branding**: Upload logo, set site title/description +- **Theme**: Configure color schemes and dark mode +- **Layout**: Set container type (static/fluid), sticky header +- **Analytics**: Add GTM/GA4 tracking codes (optional) +- **Custom Code**: Inject custom HTML/CSS/JS + +### 4. Test Dark Mode + +The template includes a dark mode toggle. Test it by: +- Using the floating theme toggle button (bottom-right by default) +- Checking theme persistence across page loads +- Verifying system preference detection + +--- + +## ⚙️ Configuration + +### Global Parameters + +Access template configuration via **System → Site Templates → MokoCassiopeia**. + +#### Theme Tab + +**General Settings:** +- **Theme Enabled**: Enable/disable theme system +- **Theme Control Type**: Switch (Light↔Dark), Radios (Light/Dark/System), or None +- **Default Choice**: System, Light, or Dark +- **Auto Dark Mode**: Automatic dark mode based on time +- **Meta Tags**: Enable color-scheme and theme-color meta tags +- **Bridge Bootstrap ARIA**: Sync theme with Bootstrap's data-bs-theme + +**Variables & Palettes:** +- **Light Mode Palette**: Standard, Alternative, or Custom +- **Dark Mode Palette**: Standard, Alternative, or Custom + +**Typography:** +- **Font Scheme**: Local (Roboto) or Web fonts (Fira Sans, Roboto+Noto Sans) + +**Branding & Icons:** +- **Brand**: Enable/disable site branding +- **Logo File**: Upload custom logo (no default logo included) +- **Site Title**: Custom site title +- **Site Description**: Tagline/description +- **Font Awesome Kit**: Optional FA Pro kit code + +**Header & Navigation:** +- **Sticky Header**: Enable fixed header on scroll +- **Back to Top**: Enable floating back-to-top button + +**Theme Toggle UI:** +- **FAB Enabled**: Enable floating action button toggle +- **FAB Position**: Bottom-right, Bottom-left, Top-right, or Top-left + +#### Advanced Tab + +- **Layout**: Static or Fluid container + +#### Google Tab + +- **Google Tag Manager**: Enable and configure GTM container ID +- **Google Analytics**: Enable and configure GA4 measurement ID + +#### Custom Code Tab + +- **Custom Head Start**: HTML injected at start of `` +- **Custom Head End**: HTML injected at end of `` + +#### Drawers Tab + +- **Left Drawer Icon**: Font Awesome icon class (e.g., `fa-solid fa-chevron-right`) +- **Right Drawer Icon**: Font Awesome icon class (e.g., `fa-solid fa-chevron-left`) + +### Custom Color Palettes + +MokoCassiopeia supports custom color schemes: + +1. Create `src/media/css/colors/light/colors_custom.css` for light mode +2. Create `src/media/css/colors/dark/colors_custom.css` for dark mode +3. Define CSS variables (reference `colors_standard.css` for structure) +4. Select "Custom" palette in template settings + +**Example CSS Variables:** + +```css +:root { + --cassiopeia-color-primary: #1e40af; + --cassiopeia-color-link: #2563eb; + --cassiopeia-color-hover: #1d4ed8; + --cassiopeia-color-text: #1f2937; + --cassiopeia-color-bg: #ffffff; +} +``` + +### Table of Contents + +Enable automatic TOC for articles: + +1. Edit an article in Joomla admin +2. Navigate to **Options → Layout** +3. Select **toc-left** or **toc-right** +4. Save the article + +The TOC will automatically generate from article headings (H2, H3, etc.) and appear as a sidebar. + +--- + +## 🎨 Theme System + +### Dark Mode Features + +- **Automatic Detection**: Respects user's system preferences +- **Manual Toggle**: Floating button or radio controls +- **Persistence**: Saves preference in localStorage +- **Smooth Transitions**: Animated theme switching +- **Comprehensive Support**: All components themed for dark mode + +### Theme Control Types + +1. **Switch**: Simple light/dark toggle button +2. **Radios**: Three options - Light, Dark, System +3. **None**: No visible control (respects system only) + +### Meta Tags + +When enabled, the template adds: + +```html + + + +``` + +--- + +## 🛠 Development + +### For Contributors + +**New to the project?** See [Quick Start Guide](./docs/QUICK_START.md) for a 5-minute setup. + +### Development Resources + +- **[Quick Start Guide](./docs/QUICK_START.md)** - Setup and first steps +- **[Joomla Development Guide](./docs/JOOMLA_DEVELOPMENT.md)** - Testing, quality checks, deployment +- **[Workflow Guide](./docs/WORKFLOW_GUIDE.md)** - Git workflow and branching +- **[Contributing Guide](./CONTRIBUTING.md)** - Contribution guidelines +- **[Roadmap](./docs/ROADMAP.md)** - Feature roadmap and planning + +### Development Tools + +- **Pre-commit Hooks**: Automatic validation before commits +- **PHP CodeSniffer**: Code style validation (Joomla standards) +- **PHPStan**: Static analysis for PHP code +- **Codeception**: Testing framework + +### Quick Development Setup + +```bash +# Clone repository +git clone https://github.com/mokoconsulting-tech/MokoCassiopeia.git +cd MokoCassiopeia + +# Install development dependencies (if using Composer) +composer install --dev + +# Run code quality checks +make validate # or manual commands +``` + +### Building Template Package + +See [Joomla Development Guide](./docs/JOOMLA_DEVELOPMENT.md) for packaging instructions. + +--- + +## 📚 Documentation + +### User Documentation + +- **[README](./README.md)** - This file (overview and features) +- **[CHANGELOG](./CHANGELOG.md)** - Version history and changes +- **[Roadmap](./docs/ROADMAP.md)** - Planned features and timeline + +### Developer Documentation + +- **[Quick Start](./docs/QUICK_START.md)** - 5-minute developer setup +- **[Development Guide](./docs/JOOMLA_DEVELOPMENT.md)** - Comprehensive development guide +- **[Workflow Guide](./docs/WORKFLOW_GUIDE.md)** - Git workflow and processes +- **[Documentation Index](./docs/README.md)** - All documentation links + +### Governance + +- **[Contributing](./CONTRIBUTING.md)** - How to contribute +- **[Code of Conduct](./CODE_OF_CONDUCT.md)** - Community standards +- **[Governance](./GOVERNANCE.md)** - Project governance model +- **[Security Policy](./SECURITY.md)** - Security reporting and procedures + +--- + +## 📖 Changelog + +See the [CHANGELOG.md](./CHANGELOG.md) for detailed version history. + +### Recent Releases + +- **[03.06.02]** (2026-01-30) - Complete rebrand to MokoCassiopeia, removed all overrides +- **[03.06.00]** (2026-01-28) - Version standardization +- **[03.05.01]** (2026-01-09) - Security and compliance improvements +- **[02.00.00]** (2025-08-30) - Dark mode toggle and improved theming + +--- + +## 💬 Support + +### Getting Help + +- **Documentation**: Check this README and [docs folder](./docs/) +- **Issues**: Report bugs via [GitHub Issues](https://github.com/mokoconsulting-tech/MokoCassiopeia/issues) +- **Discussions**: Ask questions in [GitHub Discussions](https://github.com/mokoconsulting-tech/MokoCassiopeia/discussions) +- **Roadmap**: View planned features in [Roadmap](https://mokoconsulting.tech/support/joomla-cms/mokocassiopeia-roadmap) + +### Reporting Bugs + +Please include: +- Joomla version +- PHP version +- Template version +- Steps to reproduce +- Expected vs actual behavior +- Screenshots (if applicable) + +### Security Issues + +**Do not** report security vulnerabilities via public issues. See [SECURITY.md](./SECURITY.md) for reporting procedures. + +--- + +## 🤝 Contributing + +We welcome contributions! Please see [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines. + +### How to Contribute + +1. Fork the repository +2. Create a feature branch (`git checkout -b feature/amazing-feature`) +3. Make your changes +4. Run quality checks +5. Commit your changes (`git commit -m 'Add amazing feature'`) +6. Push to the branch (`git push origin feature/amazing-feature`) +7. Open a Pull Request + +### Development Workflow + +See [Workflow Guide](./docs/WORKFLOW_GUIDE.md) for detailed Git workflow. + +--- + +## 📦 Included Libraries + +MokoCassiopeia includes the following third-party libraries to provide enhanced functionality: + +### Bootstrap TOC + +- **Version**: 1.0.1 +- **Author**: Aidan Feldman +- **License**: MIT License +- **Source**: [GitHub Repository](https://github.com/afeld/bootstrap-toc) +- **Release**: [v1.0.1 Release](https://github.com/afeld/bootstrap-toc/releases/tag/v1.0.1) +- **Purpose**: Automatically generates a table of contents from article headings with scrollspy support +- **Location**: `src/media/vendor/bootstrap-toc/` +- **Integration**: Registered in `joomla.asset.json` as `vendor.bootstrap-toc` (CSS) and `vendor.bootstrap-toc.js` (JavaScript) +- **Usage**: Activated when using `toc-left` or `toc-right` article layouts +- **Features**: + - Automatic TOC generation from H1-H6 headings + - Hierarchical nested navigation + - Active state highlighting with scrollspy + - Responsive design (collapses on mobile) + - Smooth scrolling to sections + - Automatic unique ID generation for headings +- **Customizations**: CSS adapted to use Cassiopeia CSS variables for theme compatibility + +### Font Awesome 7 Free + +- **Version**: 7.0 (Free) +- **License**: Font Awesome Free License +- **Source**: [Font Awesome](https://fontawesome.com) +- **Purpose**: Provides 2,000+ vector icons for interface elements +- **Location**: `src/media/vendor/fa7free/` +- **Integration**: Fully integrated into Joomla's asset manager +- **Styles Available**: Solid, Regular, Brands + +### Bootstrap 5 + +- **Version**: 5.x (via Joomla) +- **License**: MIT License +- **Source**: [Bootstrap](https://getbootstrap.com) +- **Purpose**: Provides responsive grid system and utility classes +- **Integration**: Inherited from Joomla's Cassiopeia template, extended with additional helpers +- **Components Used**: Grid, utilities, modal, dropdown, collapse, offcanvas, tooltip, popover, scrollspy + +### Integration Method + +All third-party libraries are: +- ✅ Properly licensed and attributed +- ✅ Registered in Joomla's Web Asset Manager (`joomla.asset.json`) +- ✅ Loaded on-demand to optimize performance +- ✅ Versioned and documented for maintenance +- ✅ Compatible with Joomla 4.4.x and 5.x + +--- + +## 📄 License + +This project is licensed under the **GNU General Public License v3.0** - see the [LICENSE](./LICENSE) file for details. + +### Third-Party Licenses + +- **Joomla! CMS**: GPL-2.0-or-later +- **Cassiopeia Template**: GPL-2.0-or-later (Joomla Project) +- **Font Awesome 7 Free**: Font Awesome Free License +- **Bootstrap 5**: MIT License +- **Bootstrap TOC**: MIT License (A. Feld) + +All third-party libraries and assets remain the property of their respective authors and are credited in source files. + +--- + +## 🔗 Links + +- **Repository**: [GitHub](https://github.com/mokoconsulting-tech/MokoCassiopeia) +- **Issue Tracker**: [GitHub Issues](https://github.com/mokoconsulting-tech/MokoCassiopeia/issues) +- **Discussions**: [GitHub Discussions](https://github.com/mokoconsulting-tech/MokoCassiopeia/discussions) +- **Roadmap**: [Full Roadmap](https://mokoconsulting.tech/support/joomla-cms/mokocassiopeia-roadmap) +- **Moko Consulting**: [Website](https://mokoconsulting.tech) + +--- + +## 📊 Metadata + +- **Maintainer**: Moko Consulting Engineering +- **Author**: Jonathan Miller (@jmiller-moko) +- **Repository**: https://github.com/mokoconsulting-tech/MokoCassiopeia +- **License**: GPL-3.0-or-later +- **Classification**: Public Open Source Standards + +## 📝 Revision History + +| Date | Version | Change Summary | Author | +| ---------- | -------- | ------------------------------------------------------------------------- | ------------------------------- | +| 2026-01-30 | 03.06.02 | Regenerated README with comprehensive documentation and updated structure | Copilot Agent | +| 2026-01-30 | 03.06.02 | Complete rebrand to MokoCassiopeia, removed overrides | Copilot Agent | +| 2026-01-05 | 03.00.00 | Initial publication of template documentation and feature overview | Moko Consulting | +| 2026-01-05 | 03.00.00 | Fixed malformed markdown table formatting in revision history | Jonathan Miller (@jmiller-moko) | + +--- + +**Made with ❤️ by [Moko Consulting](https://mokoconsulting.tech)** diff --git a/SECURITY.md b/SECURITY.md index fca253d..4a48a2d 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -7,18 +7,18 @@ # FILE INFORMATION DEFGROUP: Joomla.Template - INGROUP: Moko-Cassiopeia.Governance - REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia + INGROUP: MokoCassiopeia.Governance + REPO: https://github.com/mokoconsulting-tech/MokoCassiopeia FILE: SECURITY.md - VERSION: 03.06.00 - BRIEF: Security policy and vulnerability reporting process for Moko-Cassiopeia. + VERSION: 03.06.02 + BRIEF: Security policy and vulnerability reporting process for MokoCassiopeia. PATH: /SECURITY.md NOTE: This policy is process oriented and does not replace secure engineering practices. --> ## Security Policy -This document defines how Moko-Cassiopeia handles vulnerability intake, triage, remediation, and disclosure. The objective is to reduce risk, protect downstream users, and preserve operational continuity with a verifiable audit trail. +This document defines how MokoCassiopeia handles vulnerability intake, triage, remediation, and disclosure. The objective is to reduce risk, protect downstream users, and preserve operational continuity with a verifiable audit trail. ## Scope @@ -47,7 +47,7 @@ Backports may be provided based on impact, deployment footprint, and engineering Use one of the following channels: * GitHub Security Advisories (preferred): use the repository security tab to submit a private report. -* Email: send details to `hello@mokoconsulting.tech` with subject `SECURITY: Moko-Cassiopeia vulnerability report`. +* Email: send details to `hello@mokoconsulting.tech` with subject `SECURITY: MokoCassiopeia vulnerability report`. Do not file a public GitHub issue for suspected security vulnerabilities. @@ -150,7 +150,7 @@ If you want credit, include the name or handle to list in an advisory. If you pr ## Metadata * **Document:** SECURITY.md -* **Repository:** [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) +* **Repository:** [https://github.com/mokoconsulting-tech/MokoCassiopeia](https://github.com/mokoconsulting-tech/MokoCassiopeia) * **Path:** /SECURITY.md * **Owner:** Moko Consulting * **Version:** 03.06.00 diff --git a/docs/QUICK_START.md b/docs/QUICK_START.md index 879b739..f8c2ebd 100644 --- a/docs/QUICK_START.md +++ b/docs/QUICK_START.md @@ -1,6 +1,6 @@ -# Quick Start Guide - Moko Cassiopeia Development +# Quick Start Guide - MokoCassiopeia Development -Get up and running with Moko Cassiopeia development in minutes. +Get up and running with MokoCassiopeia development in minutes. ## Prerequisites @@ -17,8 +17,8 @@ Before you begin, ensure you have: ### 1. Clone the Repository ```bash -git clone https://github.com/mokoconsulting-tech/moko-cassiopeia.git -cd moko-cassiopeia +git clone https://github.com/mokoconsulting-tech/MokoCassiopeia.git +cd MokoCassiopeia ``` ### 2. Install Development Dependencies @@ -107,7 +107,7 @@ make package # Check package contents ls -lh dist/ -unzip -l dist/moko-cassiopeia-*.zip +unzip -l dist/mokocassiopeia-*.zip ``` ## VS Code Integration diff --git a/docs/README.md b/docs/README.md index 57fc126..014149a 100644 --- a/docs/README.md +++ b/docs/README.md @@ -7,17 +7,17 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site - INGROUP: Moko-Cassiopeia.Documentation - REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia + INGROUP: MokoCassiopeia.Documentation + REPO: https://github.com/mokoconsulting-tech/MokoCassiopeia FILE: docs/README.md - VERSION: 03.06.00 - BRIEF: Documentation index for Moko-Cassiopeia template + VERSION: 03.06.02 + BRIEF: Documentation index for MokoCassiopeia template PATH: /docs/README.md --> -# Moko-Cassiopeia Documentation +# MokoCassiopeia Documentation -This directory contains comprehensive documentation for the Moko-Cassiopeia Joomla template. +This directory contains comprehensive documentation for the MokoCassiopeia Joomla template. ## Documentation Overview @@ -87,8 +87,8 @@ This project adheres to [MokoStandards](https://github.com/mokoconsulting-tech/M ## Additional Resources -* **Repository**: [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) -* **Issue Tracker**: [GitHub Issues](https://github.com/mokoconsulting-tech/moko-cassiopeia/issues) +* **Repository**: [https://github.com/mokoconsulting-tech/MokoCassiopeia](https://github.com/mokoconsulting-tech/MokoCassiopeia) +* **Issue Tracker**: [GitHub Issues](https://github.com/mokoconsulting-tech/MokoCassiopeia/issues) * **Changelog**: [CHANGELOG.md](../CHANGELOG.md) * **License**: [GPL-3.0-or-later](../LICENSE) @@ -102,10 +102,10 @@ This project adheres to [MokoStandards](https://github.com/mokoconsulting-tech/M ## Metadata * Document: docs/README.md -* Repository: [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) +* Repository: [https://github.com/mokoconsulting-tech/MokoCassiopeia](https://github.com/mokoconsulting-tech/MokoCassiopeia) * Path: /docs/README.md * Owner: Moko Consulting -* Version: 03.06.00 +* Version: 03.06.02 * Status: Active * Effective Date: 2026-01-09 diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md index 3927f36..89d3a41 100644 --- a/docs/ROADMAP.md +++ b/docs/ROADMAP.md @@ -7,24 +7,24 @@ # FILE INFORMATION DEFGROUP: Joomla.Template.Site - INGROUP: Moko-Cassiopeia.Documentation + INGROUP: MokoCassiopeia.Documentation REPO: https://github.com/mokoconsulting-tech/moko-cassiopeia FILE: docs/ROADMAP.md - VERSION: 03.06.00 - BRIEF: Version-specific roadmap for Moko-Cassiopeia template + VERSION: 03.06.02 + BRIEF: Version-specific roadmap for MokoCassiopeia template PATH: /docs/ROADMAP.md --> -# Moko-Cassiopeia Roadmap (VERSION: 03.06.00) +# MokoCassiopeia Roadmap (VERSION: 03.06.02) -This document provides a comprehensive, version-specific roadmap for the Moko-Cassiopeia Joomla template, tracking feature evolution, current capabilities, and planned enhancements. +This document provides a comprehensive, version-specific roadmap for the MokoCassiopeia Joomla template, tracking feature evolution, current capabilities, and planned enhancements. ## Table of Contents - [Version Timeline](#version-timeline) - [Past Releases](#past-releases) - [Future Roadmap (5-Year Plan)](#future-roadmap-5-year-plan) -- [Current Release (v03.06.00)](#current-release-v030600) +- [Current Release (v03.06.02)](#current-release-v030600) - [Implemented Features](#implemented-features) - [Planned Features](#planned-features) - [Development Priorities](#development-priorities) @@ -437,7 +437,7 @@ The following versions represent our planned annual major releases, each buildin --- -## Current Release (v03.06.00) +## Current Release (v03.06.02) ### System Requirements - **Joomla**: 4.4.x or 5.x @@ -661,16 +661,63 @@ The following versions represent our planned annual major releases, each buildin ### 🚧 In Development -#### Soft Offline Mode (v2.1.5 - Mentioned) -**Status**: Planned/In Development -**Description**: Keep selected categories accessible during maintenance mode +#### Soft Offline Mode (v03.07.00 - Planned) +**Status**: Planned for v03.07.00 +**Priority**: High +**Description**: Keep selected categories accessible during site maintenance mode with persistent links to essential pages + **Use Cases**: - Legal documents remain viewable during downtime -- Policy pages accessible for compliance -- Terms of service always available -**Configuration**: -- Admin-selectable categories -- Per-category offline access control +- Policy pages accessible for compliance requirements +- Terms of service always available to users +- Privacy policy accessible at all times +- Essential public information during maintenance + +**Technical Specifications**: +- **Configuration Method**: Template parameters in `templateDetails.xml` +- **Category Access**: Category IDs stored as comma-separated values +- **Persistent Links**: Direct article/menu item links always visible +- **Access Control**: Check in `offline.php` template file +- **Content Rendering**: Use Joomla's content component to fetch articles +- **Security**: Maintain proper access levels and permissions + +**Implementation Plan**: +1. Add category selection field to template parameters +2. Add persistent link configuration (Terms of Service, Privacy Policy, etc.) +3. Modify `offline.php` to check for allowed categories +4. Add persistent link display in offline mode header/footer +5. Implement category content fetching during offline mode +6. Add styling for offline mode category display and persistent links +7. Test with various category and link configurations +8. Document admin configuration steps + +**Configuration Interface**: +- **Category Field Type**: Category multiselect in template settings + - **Label**: "Categories Accessible During Offline Mode" + - **Default**: None (all content hidden by default) +- **Persistent Links**: Text fields for essential always-available links + - **Terms of Service URL**: Direct link to TOS article/page + - **Privacy Policy URL**: Direct link to privacy policy + - **Contact URL**: Optional contact page link + - **Custom Link 1-3**: Additional persistent links if needed +- **Admin Path**: System → Site Templates → MokoCassiopeia → Advanced → Offline Mode Settings + +**Persistent Links Feature**: +- **Display Location**: Footer of offline page +- **Styling**: Clearly visible, accessible links +- **Format**: "Terms of Service | Privacy Policy | Contact" +- **Behavior**: Links bypass offline mode restrictions +- **Validation**: Check if URLs are valid Joomla routes + +**Benefits**: +- ✅ Compliance: Keep legal pages accessible +- ✅ Transparency: Users can access essential information +- ✅ Flexibility: Admin control over which categories remain visible +- ✅ Security: Respects Joomla access levels +- ✅ Legal Protection: Terms of Service always accessible +- ✅ User Trust: Privacy policy always available + +**Milestone**: Target release v03.07.00 (Q2 2026) #### TODO Tracking System **Status**: Mentioned in CHANGELOG (v03.05.00) @@ -715,11 +762,12 @@ The following versions represent our planned annual major releases, each buildin ## Development Priorities ### Immediate Focus (v03.x - 2026) -1. **TODO Tracking System**: Implement separate file for issue tracking -2. **Soft Offline Mode**: Complete category-based offline access -3. **Security Updates**: Maintain Dependabot and CodeQL scans -4. **Documentation**: Keep docs synchronized with features -5. **Bug Fixes**: Address reported issues and edge cases +1. **Bootstrap TOC Integration**: Complete and document v1.0.1 implementation ✅ +2. **Soft Offline Mode**: Implement category-based offline access (Target: v03.07.00) +3. **TODO Tracking System**: Implement separate file for issue tracking +4. **Security Updates**: Maintain Dependabot and CodeQL scans +5. **Documentation**: Keep docs synchronized with features +6. **Bug Fixes**: Address reported issues and edge cases ### v04.00.00 Priorities (2027) - Template Foundation 1. **WCAG 2.1 AA Compliance**: Full template accessibility audit and implementation @@ -750,7 +798,7 @@ The following versions represent our planned annual major releases, each buildin ## Long-term Vision ### Mission Statement -Moko-Cassiopeia aims to be the **most developer-friendly, user-customizable, and standards-compliant Joomla template** while maintaining minimal core overrides for maximum upgrade compatibility. +MokoCassiopeia aims to be the **most developer-friendly, user-customizable, and standards-compliant Joomla template** while maintaining minimal core overrides for maximum upgrade compatibility. ### Core Principles 1. **Non-Invasive**: Minimal Cassiopeia overrides @@ -797,7 +845,7 @@ Moko-Cassiopeia aims to be the **most developer-friendly, user-customizable, and ## External Resources ### Official Links -- **Full Roadmap**: [https://mokoconsulting.tech/support/joomla-cms/moko-cassiopeia-roadmap](https://mokoconsulting.tech/support/joomla-cms/moko-cassiopeia-roadmap) +- **Full Roadmap**: [https://mokoconsulting.tech/support/joomla-cms/mokocassiopeia-roadmap](https://mokoconsulting.tech/support/joomla-cms/mokocassiopeia-roadmap) - **Repository**: [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) - **Issue Tracker**: [GitHub Issues](https://github.com/mokoconsulting-tech/moko-cassiopeia/issues) - **Changelog**: [CHANGELOG.md](../CHANGELOG.md) @@ -841,7 +889,7 @@ Have ideas for future features? We welcome community input! * Repository: [https://github.com/mokoconsulting-tech/moko-cassiopeia](https://github.com/mokoconsulting-tech/moko-cassiopeia) * Path: /docs/ROADMAP.md * Owner: Moko Consulting -* Version: 03.06.00 +* Version: 03.06.02 * Status: Active * Last Updated: 2026-01-27 * Classification: Public Open Source Documentation diff --git a/phpcs.xml b/phpcs.xml index 23b6656..095f6a8 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -1,6 +1,6 @@MOKO-CASSIOPEIA 3.0 continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).
This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.
This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.
Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.
It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.
All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.
" diff --git a/src/administrator/language/en-GB/tpl_mokocassiopeia.sys.ini b/src/administrator/language/en-GB/tpl_mokocassiopeia.sys.ini new file mode 100644 index 0000000..26471b4 --- /dev/null +++ b/src/administrator/language/en-GB/tpl_mokocassiopeia.sys.ini @@ -0,0 +1,35 @@ +; ; Copyright (C) 2025 Moko ConsultingMokoCassiopeia 3.0 continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).
This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.
This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.
Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.
It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.
All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.
" diff --git a/src/administrator/language/en-US/tpl_moko-cassiopeia.sys.ini b/src/administrator/language/en-US/tpl_moko-cassiopeia.sys.ini deleted file mode 100644 index 2be8aa3..0000000 --- a/src/administrator/language/en-US/tpl_moko-cassiopeia.sys.ini +++ /dev/null @@ -1,35 +0,0 @@ -; ; Copyright (C) 2025 Moko ConsultingMOKO-CASSIOPEIA 3.0 continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).
This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.
This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.
Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.
It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.
All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.
" diff --git a/src/administrator/language/en-US/tpl_mokocassiopeia.sys.ini b/src/administrator/language/en-US/tpl_mokocassiopeia.sys.ini new file mode 100644 index 0000000..38a709c --- /dev/null +++ b/src/administrator/language/en-US/tpl_mokocassiopeia.sys.ini @@ -0,0 +1,35 @@ +; ; Copyright (C) 2025 Moko ConsultingMokoCassiopeia 3.0 continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).
This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.
This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.
Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.
It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.
All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.
" diff --git a/src/language/en-GB/tpl_moko-cassiopeia.ini b/src/language/en-GB/tpl_moko-cassiopeia.ini deleted file mode 100644 index 06909e1..0000000 --- a/src/language/en-GB/tpl_moko-cassiopeia.ini +++ /dev/null @@ -1,116 +0,0 @@ -; Copyright (C) 2025 Moko ConsultingMOKO-CASSIOPEIA 3.0 continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).
This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.
This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.
Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.
It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.
All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.
" - -; ===== System / layout ===== -TPL_MOKO-CASSIOPEIA_DEVELOPMENTMODE_LABEL="Development Mode" -TPL_MOKO-CASSIOPEIA_DEVELOPMENTMODE_DESC="If 'Development Mode' is active, certain features may be disabled, such as Google Tag Manager and Google Analytics." -TPL_MOKO-CASSIOPEIA_FLUID_LABEL="Layout" -TPL_MOKO-CASSIOPEIA_STATIC="Static" -TPL_MOKO-CASSIOPEIA_FLUID="Fluid" - -; ===== Custom Code tab ===== -TPL_MOKO-CASSIOPEIA_CUSTOM_CODE_FIELDSET="Custom Code" -COM_TEMPLATES_CUSTOM_HEAD_FIELDSET_LABEL="Custom Head" -TPL_MOKO-CASSIOPEIA_CUSTOM_HEAD_START_LABEL="Custom Head: Start" -TPL_MOKO-CASSIOPEIA_CUSTOM_HEAD_START_DESC="This content will be inserted at the beginning of the <head> tag" -TPL_MOKO-CASSIOPEIA_CUSTOM_HEAD_END_LABEL="Custom Head: End" -TPL_MOKO-CASSIOPEIA_CUSTOM_HEAD_END_DESC="This content will be inserted at the end of the <head> tag" -TPL_MOKO-CASSIOPEIA_OFFLINEEMBED_LABEL="Offline Page Embed Code" -TPL_MOKO-CASSIOPEIA_OFFLINEEMBED_DESC="In addition to the 'Offline message' defined in 'Global Configuration', this will be displayed on the offline page.Use for Mailchimp code and Social Icons" - -; ===== Drawers ===== -COM_TEMPLATES_DRAWERS_FIELDSET_LABEL="Drawers" -TPL_MOKO-CASSIOPEIA_DRAWER_LEFT_ICON_LABEL="Drawer Left Icon CSS" -TPL_MOKO-CASSIOPEIA_DRAWER_LEFT_ICON_DESC="Enter the Font-Awesome class for the left drawer toggle (e.g. 'fas fa-chevron-left')." -TPL_MOKO-CASSIOPEIA_DRAWER_RIGHT_ICON_LABEL="Drawer Right Icon CSS" -TPL_MOKO-CASSIOPEIA_DRAWER_RIGHT_ICON_DESC="Enter the Font-Awesome class for the right drawer toggle (e.g. 'fas fa-chevron-right')." - -; ===== Google ===== -COM_TEMPLATES_GOOGLE_FIELDSET_LABEL="Google" -TPL_MOKO-CASSIOPEIA_GOOGLE_NOTE_TEXT="MokoCassiopeia 3.0 continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).
This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.
This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.
Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.
It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.
All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.
" + +; ===== System / layout ===== +TPL_MOKOCASSIOPEIA_DEVELOPMENTMODE_LABEL="Development Mode" +TPL_MOKOCASSIOPEIA_DEVELOPMENTMODE_DESC="If 'Development Mode' is active, certain features may be disabled, such as Google Tag Manager and Google Analytics." +TPL_MOKOCASSIOPEIA_FLUID_LABEL="Layout" +TPL_MOKOCASSIOPEIA_STATIC="Static" +TPL_MOKOCASSIOPEIA_FLUID="Fluid" + +; ===== Custom Code tab ===== +TPL_MOKOCASSIOPEIA_CUSTOM_CODE_FIELDSET="Custom Code" +COM_TEMPLATES_CUSTOM_HEAD_FIELDSET_LABEL="Custom Head" +TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_LABEL="Custom Head: Start" +TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_DESC="This content will be inserted at the beginning of the <head> tag" +TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_END_LABEL="Custom Head: End" +TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_END_DESC="This content will be inserted at the end of the <head> tag" +TPL_MOKOCASSIOPEIA_OFFLINEEMBED_LABEL="Offline Page Embed Code" +TPL_MOKOCASSIOPEIA_OFFLINEEMBED_DESC="In addition to the 'Offline message' defined in 'Global Configuration', this will be displayed on the offline page.Use for Mailchimp code and Social Icons" + +; ===== Drawers ===== +COM_TEMPLATES_DRAWERS_FIELDSET_LABEL="Drawers" +TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_LABEL="Drawer Left Icon CSS" +TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_DESC="Enter the Font-Awesome class for the left drawer toggle (e.g. 'fas fa-chevron-left')." +TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_LABEL="Drawer Right Icon CSS" +TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_DESC="Enter the Font-Awesome class for the right drawer toggle (e.g. 'fas fa-chevron-right')." + +; ===== Google ===== +COM_TEMPLATES_GOOGLE_FIELDSET_LABEL="Google" +TPL_MOKOCASSIOPEIA_GOOGLE_NOTE_TEXT="MOKO-CASSIOPEIA 3.0 continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).
This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.
This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.
Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.
It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.
All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.
" - -; ===== System / layout ===== -TPL_MOKO-CASSIOPEIA_DEVELOPMENTMODE_LABEL="Development Mode" -TPL_MOKO-CASSIOPEIA_DEVELOPMENTMODE_DESC="If 'Development Mode' is active, certain features may be disabled, such as Google Tag Manager and Google Analytics." -TPL_MOKO-CASSIOPEIA_FLUID_LABEL="Layout" -TPL_MOKO-CASSIOPEIA_STATIC="Static" -TPL_MOKO-CASSIOPEIA_FLUID="Fluid" - -; ===== Custom Code tab ===== -TPL_MOKO-CASSIOPEIA_CUSTOM_CODE_FIELDSET="Custom Code" -COM_TEMPLATES_CUSTOM_HEAD_FIELDSET_LABEL="Custom Head" -TPL_MOKO-CASSIOPEIA_CUSTOM_HEAD_START_LABEL="Custom Head: Start" -TPL_MOKO-CASSIOPEIA_CUSTOM_HEAD_START_DESC="This content will be inserted at the beginning of the <head> tag" -TPL_MOKO-CASSIOPEIA_CUSTOM_HEAD_END_LABEL="Custom Head: End" -TPL_MOKO-CASSIOPEIA_CUSTOM_HEAD_END_DESC="This content will be inserted at the end of the <head> tag" -TPL_MOKO-CASSIOPEIA_OFFLINEEMBED_LABEL="Offline Page Embed Code" -TPL_MOKO-CASSIOPEIA_OFFLINEEMBED_DESC="In addition to the 'Offline message' defined in 'Global Configuration', this will be displayed on the offline page.Use for Mailchimp code and Social Icons" - -; ===== Drawers ===== -COM_TEMPLATES_DRAWERS_FIELDSET_LABEL="Drawers" -TPL_MOKO-CASSIOPEIA_DRAWER_LEFT_ICON_LABEL="Drawer Left Icon CSS" -TPL_MOKO-CASSIOPEIA_DRAWER_LEFT_ICON_DESC="Enter the Font-Awesome class for the left drawer toggle (e.g. 'fas fa-chevron-left')." -TPL_MOKO-CASSIOPEIA_DRAWER_RIGHT_ICON_LABEL="Drawer Right Icon CSS" -TPL_MOKO-CASSIOPEIA_DRAWER_RIGHT_ICON_DESC="Enter the Font-Awesome class for the right drawer toggle (e.g. 'fas fa-chevron-right')." - -; ===== Google ===== -COM_TEMPLATES_GOOGLE_FIELDSET_LABEL="Google" -TPL_MOKO-CASSIOPEIA_GOOGLE_NOTE_TEXT="MOKOCASSIOPEIA 3.0 continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).
This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.
This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.
Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.
It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.
All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.
" + +; ===== System / layout ===== +TPL_MOKOCASSIOPEIA_DEVELOPMENTMODE_LABEL="Development Mode" +TPL_MOKOCASSIOPEIA_DEVELOPMENTMODE_DESC="If 'Development Mode' is active, certain features may be disabled, such as Google Tag Manager and Google Analytics." +TPL_MOKOCASSIOPEIA_FLUID_LABEL="Layout" +TPL_MOKOCASSIOPEIA_STATIC="Static" +TPL_MOKOCASSIOPEIA_FLUID="Fluid" + +; ===== Custom Code tab ===== +TPL_MOKOCASSIOPEIA_CUSTOM_CODE_FIELDSET="Custom Code" +COM_TEMPLATES_CUSTOM_HEAD_FIELDSET_LABEL="Custom Head" +TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_LABEL="Custom Head: Start" +TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_DESC="This content will be inserted at the beginning of the <head> tag" +TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_END_LABEL="Custom Head: End" +TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_END_DESC="This content will be inserted at the end of the <head> tag" +TPL_MOKOCASSIOPEIA_OFFLINEEMBED_LABEL="Offline Page Embed Code" +TPL_MOKOCASSIOPEIA_OFFLINEEMBED_DESC="In addition to the 'Offline message' defined in 'Global Configuration', this will be displayed on the offline page.Use for Mailchimp code and Social Icons" + +; ===== Drawers ===== +COM_TEMPLATES_DRAWERS_FIELDSET_LABEL="Drawers" +TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_LABEL="Drawer Left Icon CSS" +TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_DESC="Enter the Font-Awesome class for the left drawer toggle (e.g. 'fas fa-chevron-left')." +TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_LABEL="Drawer Right Icon CSS" +TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_DESC="Enter the Font-Awesome class for the right drawer toggle (e.g. 'fas fa-chevron-right')." + +; ===== Google ===== +COM_TEMPLATES_GOOGLE_FIELDSET_LABEL="Google" +TPL_MOKOCASSIOPEIA_GOOGLE_NOTE_TEXT="- pagination->getPagesCounter(); ?> -
- - pagination->getPagesLinks(); ?> -- areCommentsClosedAfterTime): ?> - = Text::_('COM_ENGAGE_COMMENTS_LBL_CLOSED_AFTERTIME') ?> - - = Text::_('COM_ENGAGE_COMMENTS_LBL_CLOSED_BODY') ?> - -
-