8a10b8a9e8
Authored-by: Moko Consulting
72 lines
2.7 KiB
Markdown
72 lines
2.7 KiB
Markdown
# 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
|