Flextype - Маленькая и быстрая CMS на файлах!

Дорогие Друзья!

Рад вам сообщить о выходе новой версии движка Flextype 0.9.0!

Это важный релиз для проекта, так как он определяет дальнейшее направление в его развитии! Движок переписан с нуля в соответствие с современными стандартами. Flextype все ближе к Headless системами и все дальше от своего предка Monstra CMS.

Для релиза Flextype 0.9.0 было потрачено более 450 часов на исследование, разработку и тестирование! Запушено более 1200 коммитов в репозитории проекта и уничтожено десятки литров кофе!

Основные изменения в новой Flextype 0.9.0

#1 Новое Flextype API

Движок полностью переписан с нуля. Теперь API для разработчиков более прозрачное и понятное, методы и параметры стандартизированы и приведены к одному общему виду. В ядро Flextype API входят: Entries API, Plugins API, Snippets API, Fieldsets API.

Также для теста написаного кода движка используется Scrutinizer Continuous Integration!

Continuous Integration (Непрерывная интеграция) — это практика разработки программного обеспечения, которая заключается в выполнении частых автоматизированных сборок проекта для скорейшего выявления и решения интеграционных проблем. Переход к непрерывной интеграции позволяет снизить трудоёмкость интеграции и сделать её более предсказуемой за счет наиболее раннего обнаружения и устранения ошибок и противоречий.

Flextype Public API появится в следующих релизах движка.


#2 Slim Framework

Еще со времен Monstra CMS была проблема в отсутствии нормального роутинга, и эта же проблема пришла в Flextype. Роутинга у нас не было, были только методы для работы с URI. В поисках лучшего Роутера, был выбран мощный микрофреймворк Slim.

Slim Framework - это идеальный инструмент для создания API, которые используют, переиспользуют какие-либо данные или же предоставляют к ним доступ. C помощью микрофреймворка Slim можно создавать полнофункциональные web-приложения с пользовательским интерфейсом. Он очень быстрый, имеет небольшую кодовую базу - только то, что нужно!


#3 Twig Template Engine

Много лет в Monstra CMS теперь и в Flextype (до 0.9.0) использовался нативный PHP в роли шаблонизатора, но с переходом на Slim Framework и его простой интеграцией с современным шаблонизатором Twig было принято решение перейти на Twig окончательно!

Основные особенности Twig:
- Быстрый: компилирует шаблоны в PHP код. Добавочный, относительно нативного PHP, код был сведен к минимуму.
- Безопасный: есть режим «песочницы» для проверки сомнительного кода в шаблонах. Это позволяет использовать Twig в качестве языка шаблонов для приложений, где пользователи могут менять дизайн шаблонов.
- Гибкий: основан на пластичном лексере и парсере. Это позволяет разработчику определять свои собственные тэги и фильтры, создавать свой DSL.


#4 League Glide

Полная интеграция с библиотекой League Glide для произведения манипуляций с изображениями. Никаких костылей или хаков как это в текущей было в предыдущих версиях Flextype. В Flextype 0.9.0 полная нативная поддержка League Glide! Работать с изображениями можно будет просто через API как это делает например imgix.com.


#5 Respect Validation

В новой Flextype 0.9.0 используется Respect Validation для валидации данных. Respect Validation - это самый лучший валидатор, который когда либо был написан на PHP. Он предоставляет более 100 (полностью протестированных) валидаторов.


#6 Переход на JSON вместо YAML

Переходим c YAML на JSON! Хранение данных в JSON формате позволит в будущем их располагать не только в файлах (Flat File) но и например в MongoDB или PostgreSQL (с помощью драйвера). Я думаю что такой подход поможет масштабируемостью проектов разработанных на Flextype в будущем.


#7 Плагины Site и Admin

Вместе с новой Flextype 0.9.0, появился новый плагин Site и переписанный плагин Admin. По сути теперь Flextype предоставляет простой и понятный программный API для работы с данными, а плагины решают, что с этими данными делать. В следующих релизах Flextype появится и Public API, который позволит создавать приложения любой сложности для любых устройств используя Flextype Public API как в Headless CMS :)


#8 League Event

В Flextype 0.9.0 используется простая, но эффективная библиотека для работы с событиями системы League Event вместо Flextype Events.


#9 Whoops Error Handler

В Flextype 0.9.0 используется небольшая библиотека/фреймворк для работы с ошибками и исключениями в PHP вместо Flextype Error Handler.

Whoops — это небольшая библиотека/фреймворк для работы с ошибками и исключениями в PHP. Из коробки он предоставляет аккуратный и удобный интерфейс, который помогает вести разработку быстро.
Основные особенности Whoops:
- Гибкий стековый перехват ошибок
- Не требует зависимостей (на данный момент)
- Простое API для работы с исключениями, фреймами стека вызовов и их данными
- Включает информативную страницу ошибки
- Возможность открыть указанный файл прямо в вашем IDE/редакторе
- Включает обработчики для разных форматов ответа (JSON, XML, SOAP)
- Легко расширяется и легко интегрируется в другие библиотеки и фреймворки
- Аккуратный, хорошо структурированный и протестированный код

Также Whoops позволяет открывать файлы сразу в IDE. На данный момент whoops из коробки поддерживает следующие IDE/редакторы:
- Emacs
- IDEA
- MacVim
- PhpStorm (только для MacOS)
- Sublime Text 2 и возможно 3
- Textmate
- xdebug-формат
- VSCode


#10 Slugify

В Flextype 0.9.0 используется небольшая, но мощная библиотека Slugify для создания безопасных и человекочитаемых slug.
slug - это часть URL-адреса, которая идентифицирует страницу, используя человекочитаемые ключевые слова.

Чтобы сделать URL-адрес проще для пользователей, специальные символы часто удалены или заменены. Например, акцентированные символы обычно заменяются буквами английского алфавита; пунктуация метки обычно удаляются; и пробелы (которые должны быть закодированы как %20 или +) заменены тире (-) или символом подчеркивания (_), которые более эстетично.
Полный список изменений в Flextype 0.9.0 можете посмотреть в Для просмотра ссылки Войди или Зарегистрируйся


Скачать Flextype 0.9.0:
Для просмотра ссылки Войди или Зарегистрируйся


Планы на ближайшее будущее:
- Адаптировать существующие плагины для Flextype 0.9.0
- Поиск и исправление ошибок, улучшение движка.
- Обновление документации
- Создание уроков и статей по работе с Flextype.


Буду рад любой вашей помощи проекту!
Несколько способов поддержать проект:
— Поставить лайк и сделать репост этого поста.
— Разместить ссылку на flextype.org в своем профиле на сайтах и форумах c кратким описанием проекта.
— Написать статью или пост на любом тематическом форуме о проекте Flextype.
— Принимать активное участие в обсуджениях сообщества Flextype! (VK, DISCORD, GITHUB)
— Создавать и поддерживать переводы Админки.
— Находить баги и сообщать о них на GitHub-e.
— Стать спонсором проекта, поддержать денежкой, для оплаты хостинга, и часов разработки.
 
Дорогие Друзья!

Начинаю писать цикл статей и полезных советов по работе с Flextype для разработчиков и пользователей!

Cтатьи будут публиковаться в VK и Yandex ZEN
VK: Для просмотра ссылки Войди или Зарегистрируйся
Yandex ZEN: Для просмотра ссылки Войди или Зарегистрируйся
 
Новости по проекту Flextype!
- Релизы 0.9.1, 0.9.2, 0.9.3 с множеством улучшений и важных исправлений различных багов. Для просмотра ссылки Войди или Зарегистрируйся
- Открылся официальный форум международной поддержки Flextype! Для просмотра ссылки Войди или Зарегистрируйся

Статистика - 8 июля 2019
GitHub - cкачиваний: 6000 / звезд: 160 / форков: 23 / релизов: 25
VK - подписчиков 198 / Twitter - подписчиков 114 / Discord - участников 214
 
Дорогие Друзья!

Открыт для предложений по поводу Flextype брендинга!
Тематика: НеоНуар, ТехНуар, КиберПанк
Цвета: синий, голубой, белый, черный

Тикет по теме: Для просмотра ссылки Войди или Зарегистрируйся

KPj4D_z2G4I.jpg
 
Поставил вчера для теста Flextype на бесплатном зарубежном хостинге, а сегодня по непонятным причинам сайт заблокировали какие я там мог лимиты нарушить с такой лёгкой cms.
Your account was taken down because you have exceeded the usage limits for free hosting or because of abuse.
 
Поставил вчера для теста Flextype на бесплатном зарубежном хостинге, а сегодня по непонятным причинам сайт заблокировали какие я там мог лимиты нарушить с такой лёгкой cms.
Your account was taken down because you have exceeded the usage limits for free hosting or because of abuse.
система протестирована на реальных проектах с множеством страниц, подобных проблем не обнаружено.
 
Да видимо дело в хостинге. А так cms понравилась шустренькая, интуитивно понятная админка. Не хватает правда шаблонов нормальных лендингов например!
 
Последнее редактирование:
Назад
Сверху