Files
MokoSuiteInsight/CLAUDE.md
T
jmiller 0cf50d3edf
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 25s
Generic: Project CI / Lint & Validate (pull_request) Has been cancelled
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Universal: PR Check / Secret Scan (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Has been cancelled
Generic: Project CI / Tests (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
chore(gitignore): ignore .gemini/ and local wiki/docs per ecosystem standard
Add the canonical Moko exclusions matching the Template repos: .gemini/
alongside .claude/, the AI client-instructions block, and the local wiki
clone block (wiki/, docs/). Update CLAUDE.md never-commit rule if present.

Authored-by: Moko Consulting
2026-07-18 15:09:03 -05:00

2.3 KiB

MokoSuiteInsight

Real-time dashboards, KPI monitoring, and alerting for Joomla 6. Chart.js 4 rendering, pluggable data sources.

Quick Reference

Field Value
Package pkg_mokosuitesight
Layer Standalone (auto-detects installed modules)
Language PHP 8.3+ / JavaScript (Chart.js 4)
Branch develop on dev, merge to main (protected)
Wiki MokoSuiteInsight Wiki

Architecture

Joomla package (pkg_mokosuitesight) — standalone module, auto-discovers installed MokoSuite data sources.

Optional Integrations

  • Any MokoSuite module — auto-detected via class_exists() for data source registration
  • Built-in sources: crm.contact_count, crm.deals_pipeline, crm.revenue_monthly, pos.daily_sales, hrm.headcount

Helpers (5)

  • DashboardHelper — CRUD, widget management, user dashboards
  • DataSourceHelper — pluggable metric connectors, query interface
  • AlertHelper — threshold monitoring, fire/acknowledge, cooldown
  • WidgetHelper — Chart.js data formatting (counter, line, bar, pie, gauge, table, sparkline, heatmap, funnel)
  • ExportHelper — CSV from any widget, dashboard snapshot logging

Key Patterns

  • Data sources register themselves — each MokoSuite module provides a DataSource class
  • AlertHelper skips non-scalar data sources (prevents false triggers on list-type sources)
  • Widget rendering is server-side data + client-side Chart.js

Source Directory

  • source/pkg_mokosuitesight.xml — package manifest
  • source/packages/ — sub-extensions

Rules

  • Never commit .claude/, .gemini/, .mcp.json, TODO.md, *.min.css/*.min.js
  • Attribution: Authored-by: Moko Consulting
  • Workflow directory: .mokogitea/
  • Wiki: documentation lives in the Gitea wiki, not docs/ files
  • Standards: MokoStandards
  • Changelog: [Unreleased] only — release system assigns versions

Coding Standards

  • PHP 8.3+ / Joomla 6 patterns
  • $this->getDatabase() in models, Factory::getContainer()->get(DatabaseInterface::class) in helpers
  • Factory::getApplication()->getIdentity() for user
  • Chart.js config passed as JSON from PHP — no inline JS in views