diff --git a/.mokogitea/CLAUDE.md b/.mokogitea/CLAUDE.md new file mode 100644 index 0000000..6678844 --- /dev/null +++ b/.mokogitea/CLAUDE.md @@ -0,0 +1,64 @@ +# MokoJoomStoreLocator + +Store locator listing component with coordinating map and search modules for Joomla. + +## Quick Reference + +| Field | Value | +|---|---| +| **Package** | `pkg_mokojoomstorelocator` | +| **Language** | PHP 8.1+ | +| **Branch** | develop on `dev`, merge to `main` (protected) | +| **Wiki** | [MokoJoomStoreLocator Wiki](https://git.mokoconsulting.tech/MokoConsulting/MokoJoomStoreLocator/wiki) | + +## 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` | + +## Commands + +```bash +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 + +Joomla **package** with component + 2 modules: + +- `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) +- `src/packages/mod_mokojoomstorelocator_map/` — map display module +- `src/packages/mod_mokojoomstorelocator_search/` — search/filter module +- `updates.xml` — Joomla update server manifest (repo root, not src/) + +### Database Table + +`#__mokojoomstorelocator_locations` — location data (coordinates, address, contact, business hours) + +Namespace: `Moko\Component\MokoJoomStoreLocator` + +## Rules + +- **Never commit** `.claude/`, `.mcp.json`, `TODO.md`, `*.min.css`/`*.min.js` +- **Attribution**: `Authored-by: Moko Consulting` +- **Workflow directory**: `.mokogitea/` (not `.gitea/` or `.github/`) +- **Wiki**: documentation lives in the Gitea wiki, not `docs/` files +- **Standards**: [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/moko-platform/wiki/Home) + +## Coding Standards + +- PHP 8.1+ minimum +- Joomla table operations: `bind() → check() → store()`, never `save()` +- SPDX license headers on all PHP files diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index e65deda..0000000 --- a/CLAUDE.md +++ /dev/null @@ -1,71 +0,0 @@ -# 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](https://git.mokoconsulting.tech/MokoConsulting/MokoJoomStoreLocator/wiki) | -| **Standards** | [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/moko-platform/wiki/Home) | - -## 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 - -```bash -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 -``` - -```bash -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](https://git.mokoconsulting.tech/MokoConsulting/moko-platform/wiki/Home) -- **PHP minimum**: 8.1 -- **Joomla table operations**: always use bind() -> check() -> store(), never save() -- **Namespace**: `Moko\Component\MokoJoomStoreLocator` for the component