https://github.com/evgeniyefimchenko/ee_framework
PHP MVC Framework with Admin Panel
https://github.com/evgeniyefimchenko/ee_framework
mvc-framework php-8 php-framework
Last synced: 11 months ago
JSON representation
PHP MVC Framework with Admin Panel
- Host: GitHub
- URL: https://github.com/evgeniyefimchenko/ee_framework
- Owner: evgeniyefimchenko
- License: apache-2.0
- Created: 2023-08-26T16:00:19.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-04-12T04:53:50.000Z (11 months ago)
- Last Synced: 2025-04-13T10:14:52.252Z (11 months ago)
- Topics: mvc-framework, php-8, php-framework
- Language: JavaScript
- Homepage:
- Size: 17.1 MB
- Stars: 4
- Watchers: 1
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# EE_FRAMEWORK - Легкий PHP фреймворк на основе MVC с встроенной административной панелью
EE_FRAMEWORK — это гибкий и производительный PHP-фреймворк, предназначенный для разработки веб-проектов различного назначения: от развлекательных сайтов до экспертных систем. Фреймворк отлично подходит для нестандартных проектов, где требуются гибкие решения и кастомизация.
---
## 📖 О проекте
EE_FRAMEWORK построен на основе MVC-подобной архитектуры и включает встроенную административную панель, систему авторизации, поддержку мультиязычности и мощные инструменты для оптимизации производительности. Он разработан с учетом удобства для разработчиков, предоставляя минимальный объем кода, высокую производительность и простоту сопровождения.
---
## 🚀 Основные преимущества
### Реализованные возможности:
1. **Ориентирован на разработчика**
Фреймворк спроектирован для удобства и простоты интеграции различных решений, сокращая время разработки.
2. **Уникальная система свойств сущностей**
Позволяет гибко описывать любую бизнес-модель информационного ресурса, что облегчает реализацию сложных структур данных.
3. **Встроенная система поиска**
Поддержка частичного, полного и приблизительного совпадения текста, что значительно улучшает пользовательский опыт при работе с контентом.
4. **Кэширование и сжатие контента**
Использование OPcache, Redis и файловой системы для повышения производительности и уменьшения времени загрузки страниц.
5. **Мультиязычность**
Поддержка нескольких языков из коробки (например, `/inc/langs/RU.php`), что делает проект доступным для международной аудитории.
6. **Система хуков**
Расширяемость функционала без необходимости изменения базового кода фреймворка, что упрощает поддержку и развитие проектов.
7. **Минимальный объем кода**
Высокая производительность и легкость сопровождения благодаря оптимизированному коду и отсутствию избыточной сложности.
---
## 🛠️ Технологический стек
| Технология | Описание |
|-----------------------------|-----------------------------------------------------|
| PHP 8+ | Основной язык разработки |
| MySQL (SafeMySQL) | Работа с базой данных |
| JavaScript (JQuery) | Клиентская логика |
| HTML5 & CSS3 (Bootstrap) | Адаптивный дизайн |
| Summernote | WYSIWYG текстовый редактор |
| OPcache | Оптимизация производительности PHP |
| Redis | Кэширование данных и роутинга |
---
## 📂 Структура проекта
ee_framework/
├── app/ # Прикладной код проекта
│ └── admin/ # Панель администратора
│ ├── CategoriesTrait.php # Трейт для управления категориями
│ ├── EmailsTrait.php # Трейт для управления email-шаблонами
│ ├── PagesTrait.php # Трейт для управления страницами
│ ├── PropertiesTrait.php # Трейт для управления свойствами
│ ├── SystemsTrait.php # Трейт для системных настроек
│ └── index.php # Основной контроллер панели администратора
├── assets/ # Статические ресурсы
│ ├── css/ # CSS стили
│ └── js/ # JavaScript файлы
├── cache/ # Кешированные данные
├── classes/ # Классы проекта
│ ├── helpers/ # Вспомогательные классы (утилиты)
│ │ ├── ClassMail.php # Класс для отправки email-сообщений
│ │ ├── ClassMessages.php # Класс для управления сообщениями
│ │ └── ClassNotifications.php # Класс для управления уведомлениями
│ ├── plugins/ # Сторонние библиотеки и плагины
│ │ ├── Smarty.php # Шаблонизатор Smarty
│ │ └── Twig.php # Шаблонизатор Twig
│ └── system/ # Системные классы (ядро фреймворка)
│ ├── AutoloadManager.php # Автозагрузчик классов
│ ├── ControllerBase.php # Базовый класс для контроллеров
│ ├── Hook.php # Система хуков
│ ├── Lang.php # Класс для управления локализацией и переводами
│ ├── Plugins.php # Управление плагинами
│ ├── Router.php # Маршрутизация запросов
│ ├── SafePostgres.php # Безопасное взаимодействие с PostgreSQL
│ ├── Session.php # Управление сессиями
│ ├── SysClass.php # Системные утилиты
│ └── View.php # Класс для работы с представлениями
├── inc/ # Конфигурационные и инициализационные файлы
│ ├── configuration.php # Конфигурация окружения
│ ├── hooks.php # Система хуков
│ └── startup.php # Инициализация приложения
├── logs/ # Логи ошибок и событий
├── uploads/ # Загруженные файлы пользователей
├── error.php # Страница обработки ошибок
└── index.php # Точка входа приложения
---
## ⚙️ Установка и запуск проекта
1. Клонируйте репозиторий:
git clone https://github.com/your_username/EE_framework.git
2. Настройте файл конфигурации (`inc/configuration.php`) под своё окружение.
3. Убедитесь, что папки `uploads`, `cache` и `logs` имеют права на запись.
4. При первой авторизации в административную панель база данных будет развёрнута автоматически из класса Users
---
## 🔧 Расширение функционала
### Примеры задач:
Нет задач нет примеров!
---
## 🤝 Участие в проекте
Будем рады любым предложениям по улучшению EE_FRAMEWORK! Чтобы внести свой вклад:
1. Сделайте форк репозитория.
2. Создайте новую ветку (`git checkout -b feature/new-feature`).
3. Закоммитьте изменения (`git commit -m 'Добавил новую функцию'`).
4. Запушьте изменения (`git push origin feature/new-feature`).
5. Откройте Pull Request.
---
## 📄 Лицензия
Проект распространяется под лицензией MIT.
---
## 🙌 Благодарности
Спасибо всем участникам разработки и авторам используемых библиотек:
- [SafeMySQL](https://github.com/colshrapnel/safemysql)
- [Summernote](https://summernote.org/)
- [Bootstrap](https://getbootstrap.com/)
- [JQuery](https://jquery.com/)
- [Redis](https://redis.io/)