Initial commit: entry point and project structure
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
commit
e672216b8a
6
.gitignore
vendored
Normal file
6
.gitignore
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
vendor/
|
||||
.env
|
||||
.mcp.json
|
||||
storage/logs/*.log
|
||||
storage/cache/*
|
||||
*.DS_Store
|
||||
6
.htaccess
Normal file
6
.htaccess
Normal file
@ -0,0 +1,6 @@
|
||||
Options -Indexes
|
||||
|
||||
RewriteEngine On
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule ^ index.php [L]
|
||||
61
CLAUDE.md
Normal file
61
CLAUDE.md
Normal file
@ -0,0 +1,61 @@
|
||||
# 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/Core/` — ядро: Application, загрузка конфига, бутстрап
|
||||
- `System/Http/` — Request, Response, обработка HTTP-цикла
|
||||
- `System/Router/` — маршрутизация (регистрация роутов, диспатчинг)
|
||||
- `System/Container/` — DI-контейнер (bind/make/singleton)
|
||||
- `System/Middleware/` — цепочка middleware (Pipeline)
|
||||
- `System/View/` — шаблонизатор
|
||||
- `System/Database/` — QueryBuilder / ORM
|
||||
- `System/Console/` — CLI-команды
|
||||
- `System/Exceptions/` — обработчики ошибок
|
||||
- `config/` — конфигурационные файлы (.php массивы)
|
||||
- `index.php` — точка входа
|
||||
- `bin/bicycle` — CLI-точка входа
|
||||
|
||||
## Когда структура будет создана
|
||||
|
||||
### Установка зависимостей
|
||||
```bash
|
||||
composer install
|
||||
```
|
||||
|
||||
### Запуск встроенного сервера
|
||||
```bash
|
||||
php -S localhost:8000 -t public
|
||||
```
|
||||
|
||||
### Запуск тестов
|
||||
```bash
|
||||
./vendor/bin/phpunit
|
||||
# один тест:
|
||||
./vendor/bin/phpunit tests/Unit/RouterTest.php
|
||||
```
|
||||
|
||||
### Линтер / статический анализ
|
||||
```bash
|
||||
./vendor/bin/phpcs --standard=PSR12 src/
|
||||
./vendor/bin/phpstan analyse src --level=5
|
||||
```
|
||||
|
||||
### CLI фреймворка
|
||||
```bash
|
||||
php bin/bicycle <command>
|
||||
```
|
||||
|
||||
## Соглашения
|
||||
|
||||
- PHP 8.1+, строгая типизация (`declare(strict_types=1)`)
|
||||
- Стандарт кода — PSR-12
|
||||
- Пространство имён корня: `Bicycle\`
|
||||
- Автозагрузка через Composer PSR-4: `"Bicycle\\": "src/"`
|
||||
Loading…
Reference in New Issue
Block a user