Как я глобальные чаты в 2023 году представлял — конкурс пет-проектов

Написал небольшой и простой глобальный чат, вдохновившись стратежкой Clash of clans.

402 открытий6К показов
Как я глобальные чаты в 2023 году представлял — конкурс пет-проектов

Egor Yolkin, Python backend разработчик, 19 годиков

Сайтик создателя:

GitHub проекта:

Предисловие

Однажды, размышляя над тем, насколько изменились чаты за последние несколько лет, я внезапно вспомнил давным давно забытую стратежку — Clash of clans.

И вспомнилось мне то забытое временем чувство, когда трава была зеленее, чай чернее, а глобальный чат в данной игре ещё существовал и радовал игроков своим присутствием. Сколько ночей у меня проходило там — не сосчитать. Впрочем, это и не нужно.

Так и родилась в недрах моих нейронных связей мысь о том, что глобальные чаты в массе своей представляли крайне интересную концепцию: все ко всем. Многим (мне, порой, тоже) они приносили новые знакомства. Каждый мог извлечь какую-либо пользу для себя в подобном интерфейсе, или с радостью провести пару десятков минут за обсуждением ныне злободневного за чашечкой чая тыкая буковки.

И подумал я, а не поискать ли мне спустя стольких лет скитаний аналог подобных чатов? Да, следовало бы. И я начал поиски, но успехом они не увенчались. Не было того самого лампового чатика, где каждый мог бы найти себе собеседника по душе.

В тот самый момент я понял, что мне следует взять ситуацию под свой контроль и подарить этому миру нечто, пусть и не столь полезное, но дающее те самые забытые чувства после нескольких часов общения с абсолютно незнакомыми людьми.

Так и появился он…

World ⚡️ Connect

Я начал свой путь с изучения вопроса: а что вообще требуется от подобной категории цифровых продуктов?

Пришёл к выводу, что лучшей идеей будет чат с максимально простой регистрацией (банально — имя и пароль), разделением чатов на категории (далее — топики) и красивым дизайном.

Время бэкенда!

Как я глобальные чаты в 2023 году представлял — конкурс пет-проектов 1

Подумал я и приступил к выбору инструментов для разработки. По душе мне пришёлся FastAPI. На нём и ехала конструкция моя. Реализовал простенькое API, которое позволяло:

  1. Производить регистрацию и авторизацию пользователей без кучи полей информации.
  2. Отправлять сообщения.
  3. Создавать топики и редактировать их.
  4. Получать информацию о топиках (общее количество сообщений и несколько сотен последних сообщений с возможностью пагинации).
  5. Использовать WebSocket’ы для реализации чат.

Итог: имеем красивое RESTful API на FastAPI и WebSockets. Поспешаем не торопясь.

Момент фронтенд-части

Поразмыслило моё десятое «Я» и сделало шаг в сторону использования Bootstrap. В веб-дезигнах ваших я не силён, а много эстетических рыбов от проекта получить всегда рад. Также роль сыграла скорость возведения великой китайской стены №2 в виде моего чата.

Итог: имеем минималистичную вёрстку с использованием Вootstrap. Доволен как слон.

— Так мало?

Возмутиться кто-то.

— Да

Отвечу я.

Задумка была именно в простоте. Имея для примера глобальный чат Clash of clans, я принял решение, что моё веб-приложение не должно содержать много сотен фишек и прочего. Скажем так, это моя философия ?

А что в итоге то?

В итоге имею личный прекрасный пет-проект для себя и моих девяти личностей. Будем вместе общаться ? В процессе реализации проекта я проникся ностальгией о прошлом. Глобальные чаты прекрасны, а мой — так вообще (шутка юмора, конечно же).

Хочу сказать спасибо Tproger за то, что дали мотивацию написать эту статью, а также за действительно удобный редактор статей.

Всем добра (⁠◕⁠ᴗ⁠◕⁠✿⁠)

Следите за новыми постами
Следите за новыми постами по любимым темам
402 открытий6К показов