Что я использую при создание Mini Apps в Telegram или почему Next.js лучшее универсальное решение
Всем привет! На связи Дмитрий, я разработчик, пиши о своих кейсах, опыте и много другом о чем хочется поделиться.
Пришла идея рассказать о моем опыте разработки на Next.js и почему именно эту технологию я применяю при разработке Mini Apps Telegram а так же мощных Web-Приложений.
Что такое Mini Apps Telegram?
Расскажу своими словами. Это своего рода Web-приложение запускающийся внутри Telegram на базе браузера Edge. Не выходя из Telegram и не скачивания мы можем открывать внутренние приложения и использовать их для своих целей. Эти приложения могут быть разного вида, выполняющие различные функции. В том числе это могут быть игры.
Как мой выбор пал на Next.js?
Next.js — фреймворк на JavaScript, использующий React для построения Server Side Render-приложений (SSR) и статически-генерируемых сайтов
Автор: Гугл
Преимущества которые я выделил - это Next.js позволяет мне делать FullStack приложения, без необходимости развертывать дополнительные инструменты, а развертывание приложения написанного на Next.js занимает у меня пару минут и без дополнительных затрат.
Еще пару преимуществ:
Рендеринг на стороне сервера за исключением динамических данных.
Оптимизированные изображения
Простой роутинг без необходимости дополнительных манипуляций
Middleware
Так же Next.js советуют использовать сами разработчики React помимо других инструментов.
Я создал "Шаблон" для разработки Mini Apps Telegram
Сделал публичный OpenSource шаблон для быстрого развертывания проекта для разработки, что позволяет мне экономить время и переиспользовать готовые куски кода.
OpenSource проект который я стараюсь развивать
Вы можете так же использовать и переделать под себя, либо предложить свое.
На данный момент он дополняется, но вы сами можете ознакомится с ним и написать вашу обратную связь, чем поможете стать лучше - ОЗНАКОМИТЬСЯ
Здесь я использую кроме Next.js такие инструменты как:
Tailwind CSS - позволяет писать CSS в два раза быстрее с помощью заготовленных классов. Но есть минус, код засоряется кучей классов и становится не читаемым. Но тут дело привычки.
DrizzleORM - использую для прямого подключения с Next.js к базе данных, что позволяет мне брать данные напрямую в обход как я уже говорил других инструментов.
Redux - недавно его подключил, использую для хранения состояний. Так как у нас нет "Адресной строки" а так же еще сырые "браузерные хранилища" я решил прибегнуть к этому инструменту.
Здесь изображена вырезка с сайта Tailwind и стиль кода при его использование
А так же еще пару дополнений и плагинов Next.js для анализа кода и его размеров.
Что я еще использую?
Strapi - для реализации админ панели с готовыми запросами, я использую OpenSource проект Strapi. Он мне позволяет делать любые сущности, посты, юзеров, загружать медиа и многое другое и использовать на Mini App Telegram и давать возможность пользователям самим добавлять данные.
PostgresSQL - реляционная база данных. Использую обычно отдельного от всего. А так же она применяется в админ панели.
Vercel - для быстрого развертывания Mini Apps Telegram. Выдается готовый домен ( без него вы Mini App не запустите ), автоматическое обновление с GitHub при изменениях. И самое главное - БЕСПЛАТНО! Правда я так и не понял какие там ограничения есть. Использую чисто для разработки.
TimeWeb Cloud - еще один инструмент в моем списке, быстрое развертывание баз данных, облачных серверов и новая возможность - это развернуть Next.js приложение за 1 рубль! Тоже самое что и Vercel но за 1 рубль 😅 ( PS не реклама, а то приложил бы реферальную ссылку )
Подытожим
Просто посчитал не хватаем мне мемов:)
Делать можно на чем угодно и как угодно, знаю ребят кто сгенерировал HTML страницы и собрали таким образом приложение и жили спокойно.
Как говорится на что хватит фантазии то можно сделать.
Выбирать на чем делать конечно же вам, если вы разработчик или клиент который хочет реализовать свою идею. Мой выбор пал на Next.js как на универсальный инструмент который подходит мне во всем, да есть и свои минусы без них никуда.
Если вам вдруг интересно и не хватает каналов в вашем списке в Telegram, то приглашаю в свой ( чисто по желанию ) - ПОЕХАЛИ
Если ты разработчик и у тебя есть вопросы, пиши не стесняйся, я отвечаю всем и по возможности стараюсь помочь, возможно вместе научимся новому!
Ответ на пост «Почему айтишникам платят много и туда не попасть»
Начинал деятельность "администрирования" с уровня стажера под Novell NetWare и Lotus Notes в девяностых. Более менее развязался с темой перед кризисом 2008 года. Как раз последний winNT 4.0 на попечении выключили )))) win 20хх продолжали работать без меня.
По работе со слаботочкой вынужден отслеживать современные реалии серверных ОС. Ничего реально полезного и важного в современной доменной структуре не появилось за 25 лет. Только свистелки и перделки.
Про Unix или сетевое оборудование уж тем более - можно две трети обучения пройти по учебникам начала нулевых абсолютно без потери качества. Только когда дело доходит до конкрентных моделей нужно именно эти описания.
Между тем к примеру с 90ых годов пожарная охрана РФ в лице ВНИИПО три раза кардинально меняла методологию пожарной охраны РФ. (и да про загнивающих космонафтов Зoлoтoва знаю, здесь ситуация конечно обратная, везде есть разные примеры).
В общестрое самый массовый шифер концептуально сменили на металл, глиняный кирпич на газобетон, блоки фбс и их говноиммитация в фундаментах на винтовые сваи.
Сантехники массово перешли с металла на металло-пластик, а потом расплевавшись, на сугубо пластик. Или вы назовете мне аналоги водяных теплых полов из времен windows 9x ?
А сколько раз переписывали учебник история для преподавателей?
или как дикий антинаучный бред про "пятый океан" для 90ы-х стал де факто "особым океаном" вопреки прямому противоречию определения термина океан, каково учителям географии? а астрономы Плутон унизили, типа маловат, для распила новых грантов.
Единственная пока ещё развивающаяся и меняющаяся тема IT это прикладные интернет-приложения (не технология, ибо технология IPv6 "перспективна" уже лет так 30).
Но таковые есть в любой отрасли хозяйства.
Сверхдоходы IT-ов исключительно деятельность Наебалиной как результат низкого курса рубля. Так же как экспорт добычы недр и геология.
Или летчиков и прочих авиаторов.
Или ЧВК и как следствие контрактники на СВО.
Никакой исключительности. Только удачливое стечение обстоятельств.
Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления]
Обновление в новом проекте Talkvio построенном на базе форума с более 250 000 сообщений из далекого 2007 года и уже большим количеством новых с момента создания нового движка в 2023 году. Отличается наличием минусов, есть возможность указывать свое отношение к автору и менять свое отношение через системы кармы и очков (что выгодно отличается от обычного лайканья постов). Есть пометки моего (авторский контент), поиск, блочный редактор с черновиками, черновики для комментариев, оповещения, фильтры для тех кто интересуется топами комментариев или постов, многочисленные разделы со свежим/лучшим/комментируемым/авторским, реверсные и прямые отображения комментариев, подписки на теги и на пользователей, избранное, увеличение изображений, оформление своей страницы, публикацию по расписанию, подъемы постов, случайная лента / случайные посты, сайт доступен на 2 языках, имеет темную и светлую тему, подсказки для новичков, справка, живая панель комментариев, управление клавиатурой, скрытие просмотренных постов, и многое другое. Так же уже есть приложение на андроид. Многие вещи внедряются и дорабатываются и открыты для предложений. Реклама отсутствует как таковая. В будущем ресурс будет уделять гораздо больше вниманию авторскому контенту. Ссылка на ресурс и приложение на android в комментарии. Предложения по улучшению от пикабушников и участников Talkvio рассматриваются, внедрено уже более 500 таких улучшений и предложений за последний год.
Последние изменения:
Появилась менюшка с возможностью делиться ссылкой, о чем просили, пока только телеграм там, но потом расширятся возможности.
Исправлена регрессия с поиском после введения двойных ответов.
Теперь есть возможность загружать видео длительностью до 10 минут, исправлены превьюшки у видео.
Добавлена возможность разворачивания ответа в комменте по клику на него.
В левую панель и левое меню (для телефонов) добавлены ссылки на Play Market с приложением и прямая ссылка на apk (например для телефонов где недоступен плей маркет)
По многочисленным просьбам добавлена возможность лайкнуть пост на мобильных устройствах внизу
Теперь и у меня 50 строк
Раритет: «Львов»
ПК-01 «Львов», разработанный в 1986 году в Львовском политехническом институте и выпускавшегося Львовским производственным объединением им. Ленина. Процессор в нём всё тот же КР580ВМ80А, но графические возможности явно лучше. По графике он очень похож на БК-0010 — те же 4 цвета при разрешении 256 × 256 точек, но в отличие от БК, для этих 4-х цветов можно выбрать одну из 128 палитр, содержащих разные комбинации 8 цветов (чёрный, белый, красный, зелёный, синий, голубой, пурпурный, жёлтый). Это усовершенствование очень значительно разнообразит графику, хотя, надо отметить, в большинстве игр всё равно используются те же самые цвета, что и на БК — чёрный, синий, зелёный и красный — просто потому, что они позволяют получить наибольший цветовой диапазон, а смешивание их в шахматном порядке даёт ещё 6 хороших цветов и оттенков. Кроме того, «Львов» был снабжён значительно большим объёмом ОЗУ, чем БК — 64 Кбайт, из которых 16 занимала видеопамять. Объём ПЗУ 16 Кбайт и в нём, естественно, хранился Бейсик. У этого ПК было несколько интересных особенностей — например, тот же Бейсик при включении компьютера сначала частично копировался из ПЗУ в ОЗУ и лишь после этого начинал работу (соответственно, это несколько уменьшало пользовательскую часть ОЗУ — примерно с 48 до 40 Кбайт). Ещё одна особенность — схема видеоконтроллера не предусматривала наличие бордюра, как это было сделано в большинстве других ПК, поэтому гарантированный размер видимой области экрана составлял лишь 225 × 200 точек, то есть довольно широкие полосы по периметру экрана, занимающие почти треть видеопамяти, использовать вообще не рекомендовалось, поскольку они могли просто оказаться вне экрана телевизора. Специального звукового генератора у «Львова» не было — звук выводился чисто программно с полной загрузкой процессора.
Восьмиразрядный процессор работал на неплохой частоте примерно 2,2 МГц, но при этом сильно тормозился видеоконтроллером и считался медленным. В общем, эта модель имела как некоторые достоинства, так и определённые недостатки. Популярность «Львова» была весьма велика, особенно на Украине. Это не удивительно, поскольку по имеющимся данным эта модель была произведена в количестве около 80 тысяч штук, то есть всего в 2 раза меньше, чем БК-0010/БК-0011. Хотя такой объём выпуска вызывает некоторые сомнения (всё же многовато для одной модели, выпускаемой лишь одним заводом), косвенно он подтверждаются количеством и качеством программ для «Львова», особенно игр — их довольно много, и уровень у них вполне серьёзный. Таким образом, по количеству и качеству игр ПК-01 «Львов» можно поставить на третье-четвёртое место среди чисто советских домашних ПК — после БК-0010 и «Вектора-06Ц», примерно на уровне ПК8000 (если не учитывать «радиолюбительские» компьютеры «Специалист» и «Орион-128», для которых также было написано много хорошего ПО). Цена компьютера была повыше, чем у более простых домашних моделей — 750 рублей, но она вполне оправдана наличием цветной графики и довольно большим объёмом памяти. Ещё один интересный факт: «Львов» чуть ли не единственный из всех советских домашних ПК активно рекламировался в конце 1980-х годов по центральному телевидению — многие, наверное, хорошо помнят этот ролик с Ефимом Шифриным и известными детьми-актёрами
ПК-01 «Львов»: один из распространённых советских домашних ПК на базе 8-разрядного процессора КР580ВМ80А. Приятный дизайн, клавиатура похожа на стандарт «Радио-86РК», но добавлены управляющие и функциональные клавиши сверху
Основная плата ПК-01 «Львов»: 61 микросхема (плюс ещё одна БИС на плате клавиатуры), причём для ПЗУ применена та же «военная хитрость», что и в «Искре 1080» — 16-килобайтное ПЗУ собрано на 8 недефицитных микросхемах малой ёмкости, а не на 1-2-х микросхемах (ёмкостью 16 или 8 Кбайт)
Ищу человека
Всем привет! Есть небольшая идея на проект для новичков в питоне, как и я. Кому будет интересна небольшая совместная деятельность, отпишитесь. Более подробно смогу рассказать в личных сообщениях, заинтересует ли вас это.