PHP, MySQL | Создание универсального стартер-кита для PHP-проек
Привет, ребята!
Мне нужна ваша помощь в создании универсального стартер-кита для PHP. Идея в том, чтобы разработать базовый фреймворк или платформу, которая подойдет для реализации любого проекта, будь то сайт, админка или API. Основной упор — удобство и независимость: каждый сможет легко дописать или настроить что-то под себя, собрать нужный функционал из готовых классов и функций.
Хочется, чтобы это было чем-то вроде конструктора:
Пользователь сам выбирает, какие модули подключить.
Не нужно быть привязанным к конкретным библиотекам, но возможность их использовать сохраняется.
Всё уже адаптировано под базовый дизайн, но его легко заменить или модифицировать.
Что мне нужно:
Подсказки по структуре ядра:
- Какие папки и файлы должны быть в стартер-ките?
- Как лучше организовать автозагрузку, маршрутизацию, инициализацию модулей и работу с конфигурацией?
Функционал ядра:
- Какие общие функции точно нужны (например, работа с конфигурацией, редиректы, работа с файлами и т.д.)?
- Какие классы вы считаете базовыми (например, для работы с базой данных, маршрутизацией, авторизацией)?
Гибкость:
- Как обеспечить возможность добавления новых модулей и функционала без изменения ядра?
- Как минимизировать зависимости, чтобы проекты могли работать без Composer, но при необходимости использовать сторонние библиотеки?
Работа с шаблонами:
- Стоит ли внедрять шаблонизатор по умолчанию или оставить работу с шаблонами максимально простой?
Работа с данными:
- Какие инструменты для работы с базами данных и API лучше включить в стартер-кит?
Ваши идеи:
Возможно, у вас есть мысли о том, как улучшить процесс разработки на PHP, чтобы стартер-кит подходил для реальных задач.
Примерная структура, которую я наметил:
framework/ — ядро (функции, автозагрузка, конфигурация, маршрутизация).
modules/ — модули (например, авторизация, работа с пользователями, блоги).
themes/ — базовые шаблоны.
storage/ — кеш, логи, временные файлы.
Я хочу, чтобы стартер-кит был удобным и подходил как для новичков, так и для опытных разработчиков. Буду рад любым советам, идеям, кодовым примерам или обсуждению.
Заранее спасибо за помощь! 🙌
https://github.com/lifesheets/php-startkit
Мне нужна ваша помощь в создании универсального стартер-кита для PHP. Идея в том, чтобы разработать базовый фреймворк или платформу, которая подойдет для реализации любого проекта, будь то сайт, админка или API. Основной упор — удобство и независимость: каждый сможет легко дописать или настроить что-то под себя, собрать нужный функционал из готовых классов и функций.
Хочется, чтобы это было чем-то вроде конструктора:
Пользователь сам выбирает, какие модули подключить.
Не нужно быть привязанным к конкретным библиотекам, но возможность их использовать сохраняется.
Всё уже адаптировано под базовый дизайн, но его легко заменить или модифицировать.
Что мне нужно:
Подсказки по структуре ядра:
- Какие папки и файлы должны быть в стартер-ките?
- Как лучше организовать автозагрузку, маршрутизацию, инициализацию модулей и работу с конфигурацией?
Функционал ядра:
- Какие общие функции точно нужны (например, работа с конфигурацией, редиректы, работа с файлами и т.д.)?
- Какие классы вы считаете базовыми (например, для работы с базой данных, маршрутизацией, авторизацией)?
Гибкость:
- Как обеспечить возможность добавления новых модулей и функционала без изменения ядра?
- Как минимизировать зависимости, чтобы проекты могли работать без Composer, но при необходимости использовать сторонние библиотеки?
Работа с шаблонами:
- Стоит ли внедрять шаблонизатор по умолчанию или оставить работу с шаблонами максимально простой?
Работа с данными:
- Какие инструменты для работы с базами данных и API лучше включить в стартер-кит?
Ваши идеи:
Возможно, у вас есть мысли о том, как улучшить процесс разработки на PHP, чтобы стартер-кит подходил для реальных задач.
Примерная структура, которую я наметил:
framework/ — ядро (функции, автозагрузка, конфигурация, маршрутизация).
modules/ — модули (например, авторизация, работа с пользователями, блоги).
themes/ — базовые шаблоны.
storage/ — кеш, логи, временные файлы.
Я хочу, чтобы стартер-кит был удобным и подходил как для новичков, так и для опытных разработчиков. Буду рад любым советам, идеям, кодовым примерам или обсуждению.
Заранее спасибо за помощь! 🙌
https://github.com/lifesheets/php-startkit
В современных реалиях фреймворк без composer сразу идёт лесом, пакеты фреймворка должны подключаться через composer для возможности обновления.
Жизненно необходимо: роутер, сервис контейнер, orm, нормальный логгер, работа с кэшем, удобная разработка апи. Желательно чтоб это все соответствовало psr, хотя бы request, response.
В итоге получается laravel или symfony, а по сему смысла что то придумывать особо нет)
Жизненно необходимо: роутер, сервис контейнер, orm, нормальный логгер, работа с кэшем, удобная разработка апи. Желательно чтоб это все соответствовало psr, хотя бы request, response.
В итоге получается laravel или symfony, а по сему смысла что то придумывать особо нет)

В современных реалиях фреймворк без composer сразу идёт лесом, пакеты фреймворка должны подключаться через composer для возможности обновления.
Жизненно необходимо: роутер, сервис контейнер, orm, нормальный логгер, работа с кэшем, удобная разработка апи. Желательно чтоб это все соответствовало psr, хотя бы request, response.
В итоге получается laravel или symfony, а по сему смысла что то придумывать особо нет)
Автору же могу посоветовать забыть слово "фреймворк", и написать полноценную цмс с нуля

Но давайте честно, в большинстве случаев проекты не требуют такой "тяжелой артиллерии". Для лендингов, блогов, кино-сайтов или других небольших решений брать фреймворк — это часто стрельба из пушки по воробьям. Именно поэтому я пишу свой движок: он лёгкий, гибкий, и я создаю его с учётом реальных потребностей небольших и средних проектов.
Кроме того, мой подход позволяет избавиться от лишних зависимостей, сделать всё максимально оптимальным и понятным. А для простых сайтов на базе таких движков, как WordPress или InstantCMS, люди вообще обходятся без фреймворков. Так что тут всё зависит от задач.

Для меня важно, чтобы система была лёгкой, гибкой и не перегруженной лишними зависимостями, которые не нужны в большинстве небольших и средних проектов.
делай сразу мульти язык


Для меня важно, чтобы система была лёгкой, гибкой и не перегруженной лишними зависимостями, которые не нужны в большинстве небольших и средних проектов.

------

Скачиваний: 54