57 lines
1.8 KiB
Markdown
57 lines
1.8 KiB
Markdown
# CLAUDE.md
|
||
|
||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||
|
||
## Project
|
||
|
||
**Bicycle** — самописный PHP-фреймворк, разрабатываемый с нуля. Проект находится в стадии начальной разработки.
|
||
|
||
## Предполагаемая архитектура
|
||
|
||
Фреймворк строится по принципу **MVC + Service Container**:
|
||
|
||
- `System/Classes/` — основные классы: Application, Router, Container, Middleware, Request, Response и др.
|
||
- `System/Http/` — обработчики HTTP-статусов (404, 503 и т.д.)
|
||
- `System/Database/` — QueryBuilder / ORM
|
||
- `System/View/` — шаблонизатор
|
||
- `System/Console/` — CLI-команды
|
||
- `config/` — конфигурационные файлы (.php массивы)
|
||
- `index.php` — точка входа
|
||
- `bin/bicycle` — CLI-точка входа
|
||
|
||
## Когда структура будет создана
|
||
|
||
### Установка зависимостей
|
||
```bash
|
||
composer install
|
||
```
|
||
|
||
### Запуск встроенного сервера
|
||
```bash
|
||
php -S localhost:8000
|
||
```
|
||
|
||
### Запуск тестов
|
||
```bash
|
||
./vendor/bin/phpunit
|
||
# один тест:
|
||
./vendor/bin/phpunit tests/Unit/RouterTest.php
|
||
```
|
||
|
||
### Линтер / статический анализ
|
||
```bash
|
||
./vendor/bin/phpcs --standard=PSR12 System/
|
||
./vendor/bin/phpstan analyse System/ --level=5
|
||
```
|
||
|
||
### CLI фреймворка
|
||
```bash
|
||
php bin/bicycle <command>
|
||
```
|
||
|
||
## Соглашения
|
||
|
||
- PHP 8.1+, строгая типизация (`declare(strict_types=1)`)
|
||
- Стандарт кода — PSR-12
|
||
- Пространство имён корня: `Bicycle\`
|
||
- Автозагрузка через Composer PSR-4: `"Bicycle\\": "System/Classes/"` |