Создание блога с Vue.js, Nuxt и Ghost CMS
Vue — это прогрессивный фреймворк для создания пользовательских интерфейсов. Созданный для постепенного внедрения, его реализация на существующих страницах очень проста и понятна. Даже с этими функциями Vue вполне способен запускать одностраничные приложения. Его архитектура стремится объединить лучшие черты React и Angular. Дополнительную информацию можно найти на Babacoding.
Nuxt.js — это фреймворк, который добавляет к Vue.js некоторые функции, такие как редеринг на стороне сервера (SSR) — рендеринг на стороне сервера — и генерация статического сайта (SSG) — генерация статических страниц.
SSR против SPA?
В SPA (Single-Page Application) содержимое страницы отображается после загрузки страницы, для пользователя эта стратегия не представляет проблемы, так как функционирование сохраняется.
Однако для поисковых систем (таких как Google, Bing и т. д.), которые используют роботов для чтения страниц, они не всегда ждут загрузки контента, чтобы проиндексировать страницы, как следствие, для них наш сайт имеет без содержания и, следовательно, не будут проиндексированы.
При использовании рендеринга на стороне сервера (SSR) все файлы javascript и CSS загружаются и становятся доступными в виде статических файлов. Поэтому, когда к странице обращаются, она готова, что позволяет ускорить ее загрузку и индексировать с помощью механизмов SEO (поисковая оптимизация).
Для общедоступного веб-сайта или блога желательно, чтобы он существовал в поисковых системах, по этой причине лучше принять фреймворк, реализующий SSR. Vue в качестве фреймворка для javascript, Nuxt — лучший вариант для этой цели.
CMS
Система управления контентом (CMS) — это программное обеспечение, позволяющее динамически создавать, редактировать и систематизировать контент. CMS можно разделить на две категории:
- Традиционный: контент предоставляется самим программным обеспечением, например веб-сайтом.
- Безголовый: в CMS этого типа контент доступен через API, что позволяет, среди прочего, создавать различные типы клиентов (например, SPA и мобильное приложение).
Есть несколько отличных инструментов управления контентом: WordPress, Prismic, Ghost CMS и другие.
Для этой задачи я выбрал CMS Ghost, потому что она бесплатна, имеет очень мощный текстовый редактор — идеально подходит для блога — и потому что у нее есть функции, которые также классифицируют ее как Headless CMS.