Faust.js: новий headless WordPress-фреймворк від WP Engine

Компанія WP Engine випустила новий headless-фреймворк Faust.js, призначений для роботи з будь-Node-середовищем хостингу. Фреймворк базується на платформі Next.js, яка здатна автоматично обробляти створення статичних сайтів та рендеринг на стороні сервера. Для отримання даних використовується GraphQL. Це єдиний фреймворк, в якому розробники можуть звертатися до WPGraphQL API, не знаючи заздалегідь про GraphQL-запитах.

Faust.js був ще на ранній стадії, коли компанія WP Engine найняла творця і засновника WPGraphQL Джейсона Бала. Хостинг вклав величезні кошти в розробку headless-інфраструктури, регулярно наймаючи фахівців під різні проекти, пов’язані з використанням WordPress як headless CMS. Це і є основна мета нового фреймворка – дозволити розробникам створювати масштабовані, більш продуктивні сайти за допомогою сучасних фронтенд-інструментів, поклавши на WordPress весь процес публікації. Faust.js включає в себе превью контенту, підтримку довільних типів записів, вбудовану аутентифікацію для пейволлов, інтернет-магазинів, сайтів спільнот і іншого функціоналу, який раніше було важко реалізувати на базі headless-підходу.

Чим Faust.js відрізняється від інших headless-рішень, таких як Frontity (на базі React)? Абсолютною несподіванкою для розробників стала недавня покупка Frontity з боку компанії Automattic – причому всі штатні співробітники Frontity були переведені на full-time роботу над Gutenberg. Використання headless-фреймворка, підтримуваного спільнотою – досить ризикований крок для корпоративних клієнтів.

«Frontity і Faust дуже схожі. Головна відмінність полягає в тому, що Frontity побудований на базі React, а Faust – на базі Next.js», – зазначив творець Faust.js Вільям Джонстон. – «Така відмінність між ними має велике значення. Використовуючи Faust, ви можете скористатися всіма бонусами Next. Faust дозволяє істотно поліпшити концепцію Headless WordPress».

Frontity працює тільки з WP REST API, а Faust використовує WPGraphQL для більш ефективних запитів.

«З технічної точки зору Faust побудований на рівнях. Навіть якщо ви вирішите створити своє фронтенд-додаток з використанням SvelteKit, Nuxt і ін., Ви як і раніше зможете використовувати інструменти Faust», – розповів фахівець WP Engine Келлен Мейс. – «В майбутньому ми плануємо додати документацію по взаємодії Faust з іншими фреймворками. Однак робота з Next.js дасть вам максимальну віддачу».

Вільям підтвердив, що деякі елементи Faust (ядро, компоненти React) вже працюють з фреймворком GatsbyJS. Faust в меншій мірі зачіпає фронтенд і більшою мірою націлений на поліпшення процесу публікації в WordPress.

Демо-версія Faust доступна на сайті developers.wpengine.com. Фреймворк, що включає в себе NPM-пакети та WordPress-плагін, доступний на GitHub, проте його розробники попереджають, що в Faust можуть вноситися критичні зміни в майбутньому. Дізнатися більше про Faust.js можна з документації.

Прокоментувати

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *