Оригінал статті англійською.
У своїй попередній статті я розповідав про першу версію CMS: Автоматично генерована CMS використовую вашу готову GraphQL-схему, і якщо ви її ще не читали, ти раджу з нею те ж ознайомитися для загального розуміння роботи даного модуля.
У цій статті я коротко розповім про другу версію GraphQL CMS. Ви побачите що нового в другій версії і чого варто очікувати в майбутніх версіях.
Коротко про проект:
GraphQL CMS - це npm модуль, який допоможе вам зберегти величезну кількість часу, який ви зазвичай витрачаєте на інтеграцію вашого проекту з CMS або на розробку самописної адміністративної панелі.
Все що від вас вимагається це GraphQL схема, всю іншу роботу модуль зробить за вас!
Додаток автоматично створює повноцінну CMS використовуючи всі сутності з вашої GraphQL схеми і при кожній новій зміні в GraphQL API, CMS буде автоматично оновлюватися відповідно до змін.
Філософія проекту:
Простота! Вам не потрібно буде змінювати абсолютно нічого в існуючому проекті! Ви вільні у використанні будь-яких підходів і архітектур до розробки, уявіть що GraphQL CMS це простий React компонент який ви можете розмістити всередині будь-якого іншого компонента, наприклад щоб додати футер і хедер або так само легко можете розмістити його на окремий роут.
З тієї ж причини в модулі немає системи автентифікації, так що ви вільні у використанні будь-яких рішень щоб зробити вашу CMS і API максимально захищеною.
Особисто я рекомендую FeathersJs. Відмінний, простий у використанні, безкоштовний продукт.
Що нового у другій версії:
Додаток дуже гнучкий у використанні і навіть якщо вам з якоїсь причини буде недостатньо стандартних можливостей, ви легко можете розширити CMS своїми компонентами з будь-яким функціоналом, так що у вас є 100% можливостей вирішити будь-яку задачу яка вам потрібна від CMS.
Але навіть без розширення CMS своїми компонентами, додаток спочатку надає повний список можливостей будь-якої стандартної CMS:
- [New] Документація
- [New] Підтримка властивостей GraphQL Типів з будь-якою кількістю вкладених об'єктів
- [New] Підтримка GraphQL списків, з автоматичною пре-популяцією параметрів для списку, якщо це аркуш іншого GraphQL типу, або якщо це просто довільний аркуш, буде можливість додати нові елементи до списку
- [New] Можливість завантаження файлів та вибору довільних властивостей для GrpahQL Типу до яких слід використовувати цю функцію замість стандартної форми
- Згінація
- Впорядкування пунктів меню в бічному меню і всіх інших полів
- Можливість налаштування CMS
- Легко розширити будь-які інші функції та компоненти
- Повна підтримка CRUD
Як ви можете бачити GrpahQL CMS має пристойні можливості прямо з коробки.
TODO:
- Тест кейси та коментований код, щоб було простіше іншим розробникам брати участь у проекті
Якщо у вас є якісь побажання або поради щодо проекту, пишіть у коментарях.