Круті Плагіни
Flight є надзвичайно розширюваним. Існує низка плагінів, які можна використовувати для додавання функціональності до вашого додатка Flight. Деякі з них офіційно підтримуються командою Flight, а інші є мікро/лайт бібліотеками, щоб допомогти вам розпочати роботу.
Документація API
Документація API є критичною для будь-якого API. Вона допомагає розробникам зрозуміти, як взаємодіяти з вашим API та що очікувати у відповідь. Існує кілька інструментів, доступних для допомоги у генерації документації API для ваших проєктів Flight.
- FlightPHP OpenAPI Generator - Блог-пост, написаний Даніелем Шрайбером, про те, як використовувати специфікацію OpenAPI з FlightPHP для побудови вашого API з використанням підходу API першим.
- SwaggerUI - Swagger UI є чудовим інструментом для допомоги у генерації документації API для ваших проєктів Flight. Його дуже легко використовувати, і його можна налаштувати під ваші потреби. Це PHP-бібліотека для допомоги у генерації документації Swagger.
Моніторинг Продуктивності Додатків (APM)
Моніторинг продуктивності додатків (APM) є критичним для будь-якого додатка. Він допомагає вам зрозуміти, як працює ваш додаток і де знаходяться вузькі місця. Існує низка інструментів APM, які можна використовувати з Flight.
- official flightphp/apm - Flight APM є простою бібліотекою APM, яка може використовуватися для моніторингу ваших додатків Flight. Її можна використовувати для моніторингу продуктивності вашого додатка та допомоги у виявленні вузьких місць.
Асинхронність
Flight вже є швидким фреймворком, але додавання до нього турбо-двигуна робить все більш веселим (і складним)!
- flightphp/async - Офіційна бібліотека Flight Async. Ця бібліотека є простим способом додати асинхронну обробку до вашого додатка. Вона використовує Swoole/Openswoole під капотом, щоб надати простий та ефективний спосіб запуску завдань асинхронно.
Авторизація/Дозволи
Авторизація та дозволи є критичними для будь-якого додатка, який вимагає контролю над тим, хто може отримати доступ до чого.
- official flightphp/permissions - Офіційна бібліотека Flight Permissions. Ця бібліотека є простим способом додати дозволи на рівні користувача та додатка до вашого додатка.
Аутентифікація
Аутентифікація є суттєвою для додатків, які потребують перевірки ідентичності користувача та захисту кінцевих точок API.
- firebase/php-jwt - Бібліотека JSON Web Token (JWT) для PHP. Простий та безпечний спосіб реалізувати аутентифікацію на основі токенів у ваших додатках Flight. Ідеально для безстанної аутентифікації API, захисту маршрутів з middleware та реалізації потоків авторизації у стилі OAuth.
Кешування
Кешування є чудовим способом прискорити ваш додаток. Існує низка бібліотек кешування, які можна використовувати з Flight.
- official flightphp/cache - Легка, проста та автономна PHP-клас для кешування у файлі
CLI
CLI-додатки є чудовим способом взаємодіяти з вашим додатком. Ви можете використовувати їх для генерації контролерів, відображення всіх маршрутів та інше.
- official flightphp/runway - Runway є CLI-додатком, який допомагає вам керувати вашими додатками Flight.
Куки
Кукі є чудовим способом зберігати малі частини даних на стороні клієнта. Їх можна використовувати для зберігання уподобань користувача, налаштувань додатка та інше.
- overclokk/cookie - PHP Cookie є PHP-бібліотекою, яка надає простий та ефективний спосіб керувати куками.
Налагодження
Налагодження є критичним, коли ви розробляєте у локальному середовищі. Існує кілька плагінів, які можуть покращити ваш досвід налагодження.
- tracy/tracy - Це повнофункціональний обробник помилок, який можна використовувати з Flight. Він має низку панелей, які можуть допомогти вам налагоджувати ваш додаток. Його також дуже легко розширювати та додавати власні панелі.
- official flightphp/tracy-extensions - Використовується з обробником помилок Tracy, цей плагін додає кілька додаткових панелей для допомоги з налагодженням спеціально для проєктів Flight.
Бази Даних
Бази даних є основою для більшості додатків. Це спосіб зберігати та отримувати дані. Деякі бібліотеки баз даних є просто обгортками для написання запитів, а деякі є повноцінними ORM.
- official flightphp/core SimplePdo - Офіційний помічник Flight PDO, який є частиною ядра. Це сучасна обгортка з зручними методами-помічниками, такими як
insert(),update(),delete()таtransaction(), щоб спростити операції з базою даних. Усі результати повертаються як Collections для гнучкого доступу до масивів/об'єктів. Не ORM, просто кращий спосіб працювати з PDO. - deprecated flightphp/core PdoWrapper - Офіційна обгортка Flight PDO, яка є частиною ядра (застаріла з v3.18.0). Використовуйте SimplePdo замість.
- official flightphp/active-record - Офіційний ORM/Mapper Flight ActiveRecord. Чудова маленька бібліотека для легкого отримання та зберігання даних у вашій базі даних.
- byjg/php-migration - Плагін для відстеження всіх змін бази даних для вашого проєкту.
- knifelemon/easy-query - Легкий, fluent SQL-конструктор запитів, який генерує SQL та параметри для prepared statements. Чудово працює з SimplePdo.
Шифрування
Шифрування є критичним для будь-якого додатка, який зберігає чутливі дані. Шифрування та дешифрування даних не є надто складним, але правильне зберігання ключа шифрування може бути складним. Найважливіше — ніколи не зберігати ключ шифрування у публічній директорії або комітити його до репозиторію коду.
- defuse/php-encryption - Це бібліотека, яку можна використовувати для шифрування та дешифрування даних. Запуск є досить простим, щоб почати шифрувати та дешифрувати дані.
Черга Завдань
Черги завдань дійсно корисні для асинхронної обробки завдань. Це може бути відправка email, обробка зображень або будь-що, що не потребує реального часу.
- n0nag0n/simple-job-queue - Simple Job Queue є бібліотекою, яку можна використовувати для асинхронної обробки завдань. Її можна використовувати з beanstalkd, MySQL/MariaDB, SQLite та PostgreSQL.
Сесії
Сесії не дуже корисні для API, але для побудови веб-додатка сесії можуть бути критичними для підтримки стану та інформації про вхід.
- official flightphp/session - Офіційна бібліотека Flight Session. Це проста бібліотека сесій, яку можна використовувати для зберігання та отримання даних сесії. Вона використовує вбудоване керування сесіями PHP.
- Ghostff/Session - PHP Session Manager (неблокуючий, flash, сегмент, шифрування сесії). Використовує PHP open_ssl для опціонального шифрування/дешифрування даних сесії.
Шаблонізація
Шаблонізація є основою для будь-якого веб-додатка з UI. Існує низка рушіїв шаблонізації, які можна використовувати з Flight.
- deprecated flightphp/core View - Це дуже базовий рушій шаблонізації, який є частиною ядра. Не рекомендується використовувати, якщо у вашому проєкті більше кількох сторінок.
- latte/latte - Latte є повнофункціональним рушієм шаблонізації, який дуже легко використовувати та ближчий до синтаксису PHP, ніж Twig чи Smarty. Його також дуже легко розширювати та додавати власні фільтри та функції.
- knifelemon/comment-template - CommentTemplate є потужним PHP-рушієм шаблонів з компіляцією активів, успадкуванням шаблонів та обробкою змінних. Має автоматичну мініфікацію CSS/JS, кешування, кодування Base64 та опціональну інтеграцію з фреймворком Flight PHP.
Інтеграція з WordPress
Хочете використовувати Flight у вашому проєкті WordPress? Є зручний плагін для цього!
- n0nag0n/wordpress-integration-for-flight-framework - Цей плагін WordPress дозволяє запускати Flight поруч з WordPress. Він ідеальний для додавання кастомних API, мікросервісів або навіть повних додатків до вашого сайту WordPress з використанням фреймворку Flight. Надзвичайно корисний, якщо ви хочете найкраще з обох світів!
Внесок
Маєте плагін, яким хочете поділитися? Надішліть pull request, щоб додати його до списку!