Чудові Плагіни
Flight надзвичайно розширюваний. Існує низка плагінів, які можна використовувати для додавання функціональності до вашої програми Flight. Деякі з них офіційно підтримуються командою Flight, а інші - мікро/легкі бібліотеки, які допоможуть вам розпочати роботу.
Інструменти ШІ
Flight може стати ще крутішим завдяки плагінам на базі ШІ.
- Flight MCP - Плагін для інтеграції MCP (Model Control Protocol) з Flight, що забезпечує безперебійну функціональність на базі ШІ. В основному зосереджений на документації, він допомагає зменшити витрати на токени, надаючи найактуальнішу інформацію про ваші проекти Flight.
Документація API
Документація API є критично важливою для будь-якого API. Вона допомагає розробникам зрозуміти, як взаємодіяти з вашим API та чого очікувати у відповідь. Існує кілька інструментів, які допоможуть вам генерувати документацію API для ваших проектів Flight.
- FlightPHP OpenAPI Generator - Пост у блозі, написаний Даніелем Шрайбером про те, як використовувати OpenAPI Spec з FlightPHP для побудови вашого API з використанням підходу API first.
- SwaggerUI - Swagger UI - це чудовий інструмент, який допоможе вам генерувати документацію API для ваших проектів Flight. Він дуже простий у використанні і може бути налаштований відповідно до ваших потреб. Це PHP-бібліотека для генерації документації Swagger.
Моніторинг Продуктивності Додатків (APM)
Моніторинг продуктивності додатків (APM) є критично важливим для будь-якого додатку. Він допомагає вам зрозуміти, як працює ваша програма та де знаходяться вузькі місця. Існує ряд інструментів APM, які можна використовувати з Flight.
- official flightphp/apm - Flight APM - це проста бібліотека APM, яку можна використовувати для моніторингу ваших додатків Flight. Її можна використовувати для моніторингу продуктивності вашої програми та допомогти вам виявити вузькі місця.
Асинхронність
Flight вже є швидким фреймворком, але додавання турбо-двигуна робить все ще веселішим (і складнішим)!
- flightphp/async - Офіційна асинхронна бібліотека Flight. Ця бібліотека є простим способом додати асинхронну обробку до вашої програми. Вона використовує Swoole/Openswoole під капотом для надання простого та ефективного способу виконання завдань асинхронно.
Авторизація/Дозволи
Авторизація та дозволи є критично важливими для будь-якої програми, яка потребує контролю за тим, хто може отримати доступ до чого.
- official flightphp/permissions - Офіційна бібліотека дозволів Flight. Ця бібліотека є простим способом додати дозволи на рівні користувача та програми до вашої програми.
Аутентифікація
Аутентифікація є необхідною для програм, які потребують перевірки ідентичності користувача та захисту кінцевих точок API.
- firebase/php-jwt - Бібліотека JSON Web Token (JWT) для PHP. Простий і безпечний спосіб реалізації аутентифікації на основі токенів у ваших додатках Flight. Ідеально підходить для stateless API аутентифікації, захисту маршрутів за допомогою проміжного програмного забезпечення та реалізації потоків авторизації у стилі OAuth.
Кешування
Кешування - це чудовий спосіб прискорити роботу вашої програми. Існує ряд бібліотек кешування, які можна використовувати з Flight.
- official flightphp/cache - Легка, проста і самостійна PHP-бібліотека кешування у файлах
CLI
CLI-додатки - це чудовий спосіб взаємодії з вашою програмою. Ви можете використовувати їх для генерації контролерів, відображення всіх маршрутів тощо.
- official flightphp/runway - Runway - це CLI-додаток, який допомагає вам керувати вашими додатками Flight.
Cookies
Cookies - це чудовий спосіб зберігати невеликі фрагменти даних на стороні клієнта. Їх можна використовувати для зберігання уподобань користувача, налаштувань програми тощо.
- overclokk/cookie - PHP Cookie - це PHP-бібліотека, яка забезпечує простий і ефективний спосіб керування cookies.
Налагодження
Налагодження є критично важливим при розробці у вашому локальному середовищі. Є кілька плагінів, які можуть покращити ваш досвід налагодження.
- tracy/tracy - Це повноцінний обробник помилок, який можна використовувати з Flight. Він має ряд панелей, які допоможуть вам налагодити вашу програму. Його також дуже легко розширювати та додавати власні панелі.
- official flightphp/tracy-extensions - Використовується з обробником помилок Tracy, цей плагін додає кілька додаткових панелей для налагодження конкретно для проектів Flight.
Бази Даних
Бази даних є основою більшості додатків. Це те, як ви зберігаєте та отримуєте дані. Деякі бібліотеки баз даних є просто обгортками для написання запитів, а деякі - повноцінними ORM.
- official flightphp/core SimplePdo - Офіційний помічник PDO Flight, який є частиною ядра. Це сучасна обгортка з зручними методами-помічниками, такими як
insert(),update(),delete()таtransaction()для спрощення операцій з базою даних. Всі результати повертаються як Collections для гнучкого доступу у вигляді масиву/об'єкта. Не ORM, а просто кращий спосіб роботи з PDO. - deprecated flightphp/core PdoWrapper - Офіційна обгортка PDO Flight, яка є частиною ядра (застаріла з версії v3.18.0). Використовуйте SimplePdo замість неї.
- official flightphp/active-record - Офіційний Flight ActiveRecord ORM/Mapper. Чудова маленька бібліотека для легкого отримання та збереження даних у вашій базі даних.
- byjg/php-migration - Плагін для відстеження всіх змін бази даних у вашому проекті.
- knifelemon/easy-query - Легкий, плавний конструктор SQL-запитів, який генерує SQL та параметри для підготовлених операторів. Добре працює з SimplePdo.
Шифрування
Шифрування є критично важливим для будь-якої програми, яка зберігає конфіденційні дані. Шифрування та розшифрування даних не є дуже складним, але правильне зберігання ключа шифрування може бути складним. Найважливіше - ніколи не зберігати ваш ключ шифрування у публічному каталозі або додавати його до вашого репозиторію коду.
- defuse/php-encryption - Це бібліотека, яку можна використовувати для шифрування та розшифрування даних. Почати роботу досить просто, щоб почати шифрувати та розшифровувати дані.
Електронна Пошта
Надсилання електронної пошти — базова потреба більшості веб-додатків: вітальні листи, скидання пароля, сповіщення. Ці бібліотеки роблять це безболісно і водночас зберігають надійну доставлюваність.
- ryanstubbs/flightmail - FlightMail обгортає Symfony Mailer зручним fluent API у стилі Flight. Надсилайте через SMTP або будь-якого великого провайдера за допомогою простих DSN-рядків, спрямовуйте різні провайдери для кожного повідомлення та формуйте тіла листів шаблонами Twig або Latte. Це неофіційний плагін для Flight, який не підтримується командою Flight.
Черга Завдань
Черги завдань справді корисні для асинхронної обробки завдань. Це може бути надсилання електронних листів, обробка зображень або будь-що, що не потрібно робити в реальному часі.
- n0nag0n/simple-job-queue - Simple Job Queue - це бібліотека, яку можна використовувати для асинхронної обробки завдань. Її можна використовувати з beanstalkd, MySQL/MariaDB, SQLite та PostgreSQL.
Сесії
Сесії не дуже корисні для API, але для побудови веб-додатку сесії можуть бути критично важливими для підтримки стану та інформації про вхід.
- official flightphp/session - Офіційна бібліотека сесій Flight. Це проста бібліотека сесій, яку можна використовувати для зберігання та отримання даних сесії. Вона використовує вбудовану обробку сесій PHP.
- Ghostff/Session - Менеджер сесій PHP (non-blocking, flash, segment, шифрування сесії). Використовує PHP open_ssl для опціонального шифрування/розшифрування даних сесії.
Шаблонізація
Шаблонізація є основою будь-якого веб-додатку з UI. Існує ряд шаблонізаторів, які можна використовувати з Flight.
- deprecated flightphp/core View - Це дуже базовий шаблонізатор, який є частиною ядра. Не рекомендується використовувати, якщо у вас більше кількох сторінок у вашому проекті.
- latte/latte - Latte - це повноцінний шаблонізатор, який дуже простий у використанні та відчувається ближче до синтаксису PHP, ніж Twig чи Smarty. Його також дуже легко розширювати та додавати власні фільтри та функції.
- twig/twig - Twig - це гнучкий, швидкий і безпечний шаблонізатор (той самий, що використовується Symfony). Інструменти ШІ та багато PHP-розробників добре його знають, він автоматично екранує вивід за замовчуванням і має величезну екосистему розширень.
- 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, щоб додати його до списку!