- Updated 'Powered by CodePress CMS' text to be a clickable link - Link points to https://git.noorlander.info/E.Noorlander/CodePress - Added target='_blank' and rel='noopener' for security
19 lines
1.1 KiB
Markdown
19 lines
1.1 KiB
Markdown
# Agent Instructions for CodePress CMS
|
|
|
|
## Build & Run
|
|
- **Run Server**: `php -S localhost:8080 -t public`
|
|
- **Lint PHP**: `find . -name "*.php" -exec php -l {} \;`
|
|
- **Dependencies**: No Composer/NPM required. Native PHP 8.4+ implementation.
|
|
|
|
## Code Style & Conventions
|
|
- **PHP Standards**: Follow PSR-12. Use 4 spaces for indentation.
|
|
- **Naming**: Classes `PascalCase` (e.g., `CodePressCMS`), methods `camelCase` (e.g., `renderMenu`), variables `camelCase`, config keys `snake_case`.
|
|
- **Architecture**:
|
|
- Core logic resides in `index.php`.
|
|
- Configuration in `config.php`.
|
|
- Public entry point is `public/index.php`.
|
|
- **Content**: Stored in `public/content/`. Supports `.md` (Markdown), `.php` (Dynamic), `.html` (Static).
|
|
- **Templating**: Simple string replacement `{{placeholder}}` in `templates/layout.html`.
|
|
- **Navigation**: Auto-generated from directory structure. Folders require an index file to be clickable in breadcrumbs.
|
|
- **Security**: Always use `htmlspecialchars()` for outputting user/content data.
|
|
- **Git**: `main` is the clean CMS core. `e.noorlander` contains personal content. Do not mix them. |