Я фронтенд-разработчик с годовым стажем. Знаю HTML, CSS, JS, TS, Svelte (фреймворк для js), Rest API и еще несколько разных технологий для верстки и тестов.
Мне нужно создать знакомому дизайнеру сайт с тремя страницами: Главная, Блог, О себе.
Соответственно нужно что-то типа админки для ведения блога, но авторизация пользователей не нужна.
Проблема в том, что я всегда создавал только фронт, а затем отдавал его своему бэкендеру, который занимается и БД, и деплоем сайта на хостинг. Так что я в этом ничего не понимаю.
На каком стеке лучше написать такой сайт и как его задеплоить?
Готов к обучению новым технологиям, так что выслушаю все предложения.
Пока что варианты такие:
1. Любой фреймворк + firebase
2. Фреймворк + python + sql
3. Написать на php, но я про него даже абстрактно ничего не знаю
4. Натянуть сайт на WordPress
Конечно WP, зачем этот головняк со связками, потом от друга-дизайнера запаришься блокировать звонки и читать хейтовые сообщения когда тебе надоест ему каждый день что-то помогать делать. Ты делаешь не для себя, а для него, поэтому вопрос нужно ставить не так как в шапке, а что-то типа "на чем лучше всего сделать блог для дизайнера, который не шарит в коде вообще?", и ответ будет очевиден и без подсказок.
Зачем вообще вам смотреть в сторону каких либо фреймворков, если вы ну совсем ничего в беке не понимаете. Или хотите все нервы оставить на этом проекте?
Самое простое из того, что предложено вами - это WordPress. Инструкций, как с ним работать в интернете полно. Придётся немного освоить синтаксис PHP и саму технологию натяжки, но только лишь его.
Навык это очень полезные для фрилансера, если этим промышляете. (но совершенно бесполезный при устройстве в компании, кстати)
Так же могу предложить присмотреться к какой-нибудь CMS на JS. Но всё это будет точно более трудно поддерживать в будущем. Да и инструкций/туториалов/материалов будет точно меньше чем по WordPress.
Deita, почти никогда никакая CMS не привязывается к конкретному серверу и БД. Самые популярные - KeystoneJS, Ghost используют, вроде как, React. База и сервер могут быть любыми, скорее всего.
Но вам никто не мешает взять тот же Strapi, подключить его к MongoDB и самостоятельно наверстать фронт на React, если так принципиален MERN.
Второй вариант, на мой взгляд, является оптимальным, если разбираетесь с REST API можете использовать Django Rest Framework, всё что вам нужно описано в документации, БД (sqlite) идёт в комплекте и заранее настроена, необходимо лишь создать представление данных (в вашем случае модель записи в блоге), есть возможность реализовать всё без фреймворка на фронте (если вам, конечно, не нужно SPA), но это уже к обычному Django.
Если лень разбираться с настройкой приложения Django, можете использовать Fast API.
P.S. Третий вариант стоило отбросить сразу, если вы пишите, что даже абстрактно ничего не знаете.
Блог на вашем сайте по сути - редкие статьи от самого вашего друга.
Сверстай статикой. Новая запись в его блоге будет несколько раз в год.
Сделайте заготовку(рыбу) под новую запись с разверстаными всеми типографическими элементами.
А на странице - списке записей хватит копипасты блока от предыдущей записи
Могу предложить рассмотреть - Hugo. Достаточно просто сделать шаблон сайта для Hugo из готовой вёрстки, есть хорошая документация, примеры других шаблонов и т.д. Не будет никакой базы данных и никакой wordpress не понадобится. Бонусом - сайт будет работать очень быстро из коробки, в отличии от того же wordpress.
Обновлять сайт можно будет через git или использовать Hugo на сервере, есть и другие варианты, включая "дедовский" способ - через ftp.
WordPress - быстро, бесплатно и довольно доступно для новичка, но из-за простоты сайта решение выглядит оверкиллом.
Соответственно нужно что-то типа админки для ведения блога, но авторизация пользователей не нужна.
Попробуйте, например, врезать блог в виде движка Эгея - это именно блог, без вообще чего-либо дополнительного. Может быть вам этот вариант подойдёт больше всего.
Есть готовые фреймворки для ведения блогов. В вашем конкретном случае отлично подойдёт 11ty js. И никакой бэк не нужен. Wordpress - это куча дыр и вообще оверхед для вашей задачи.