Files
2026-05-21 20:09:06 +00:00

2.7 KiB

CLAUDE.md

This file provides guidance to Claude Code when working with this repository.

Project Overview

MokoJoomStoreLocator -- A Joomla 4/5 package providing a store locator listing component with coordinating map and search modules.

Field Value
Platform joomla
Extension type package (component + modules)
Element pkg_mokojoomstorelocator
Language PHP
Default branch main
License GPL-3.0-or-later
Wiki MokoJoomStoreLocator Wiki
Standards MokoStandards

Package Contents

Extension Type Element
Store Locator Component component com_mokojoomstorelocator
Store Locator Map module (site) mod_mokojoomstorelocator_map
Store Locator Search module (site) mod_mokojoomstorelocator_search

Common Commands

make build        # Build package ZIP containing all sub-extensions
make lint         # Run PHP linter
make validate     # Lint + validation checks
make release      # Validate + build
make clean        # Clean build artifacts
composer install  # Install PHP dev dependencies

Architecture

This is a Joomla package. Key layout:

  • src/pkg_mokojoomstorelocator.xml -- package manifest
  • src/script.php -- package install/upgrade/uninstall script
  • src/packages/com_mokojoomstorelocator/ -- main component
    • admin/ -- admin MVC (controllers, models, views, forms, tables, SQL)
    • site/ -- frontend MVC (controllers, models, views, templates)
    • mokojoomstorelocator.xml -- component manifest
  • src/packages/mod_mokojoomstorelocator_map/ -- map display module
  • src/packages/mod_mokojoomstorelocator_search/ -- search/filter module
  • updates.xml -- Joomla update server manifest

Database Table

#__mokojoomstorelocator_locations -- stores location data including coordinates, address, contact info, and business hours.

Rules

  • Workflow directory: .mokogitea/ (not .gitea/ or .github/)

  • Never commit .claude/, .mcp.json, TODO.md, or *.min.css/*.min.js

  • Attribution: use Authored-by: Moko Consulting in commits

  • Branch strategy: develop on dev/, merge to main for release

  • Wiki: documentation lives in the Gitea wiki, not in docs/ files

  • Standards: this repo follows MokoStandards

  • PHP minimum: 8.1

  • Joomla table operations: always use bind() -> check() -> store(), never save()

  • Namespace: Moko\Component\MokoJoomStoreLocator for the component