Попробовал, наконец, разработку на Blazor. Это такой фреймворк под .NET, который позволяет писать фронтенд на C#. Работает он двумя способами: либо собирает весь проект в WebAssembly, и бедный пользователь грузит себе мегабайтную dll, либо устанавливает клиент-серверное соединение через SignalR и шлёт клиенту информацию об обновлённых DOM-элементах.
Вот вторую то я и пробовал. Казалось бы — каждое нажатие кнопки требует отправить на сервер запрос и получить ответ. Никогда такого не было! Но субъективно разницы во времени отклика нет (потому что веб и так достаточно медленный, хаха).
Фронтенд-часть пишется очень похоже на JSX: вёрстка реактивно вперемешку с кодом. Когда-то я очень ругал React за такой подход, потому что каша. Но нетипизированный JS по-умолчанию каша, а здесь же по факту получается очень удобно: статический анализ не даёт тебе делать ошибки и писать ерунду.
Но приятный полноценный язык программирования вместо JavaScript это лишь вишенка на торте. Самое крутое — вся сила серверного кода с полноценной возможностью обращения к базе данных, шеринг моделей данных между сервером и клиентом, и, наконец, Dependency Injection любого серверного модуля в «клиент»! То есть вы не просто пишете одно приложение вместо двух, вы ещё и получаете отсутствие ошибок при каком-нибудь изменении моделей API, когда сервер стал отдавать не то, что ожидает клиент. Вам вообще теперь не нужен API, достаточно закодить нужную функцию на серваке и инжектировать её в нужный фронтенд-модуль.
Это супер удобно, супер быстро, супер устойчиво к ошибкам. Теперь не хочется возвращаться даже на вполне крутой Vue 3. Но, система пока новая, она не обросла решениями от комьюнити, а браузерный API всё равно придётся дергать через JavaScript Interop. Для совсем кайфа нужно подождать годик, поскольку развитие идёт довольно быстро. Например, там нет очень нужного в таком деле hot reload, но в .NET 6 он уже анонсирован, и вроде как есть в превью, а релиз в ноябре.
#dev
19.04.26 Сумы - Мирополье
Позиционные боевые действия в Сумской зоне безопасности.
ВС РФ продвинулись на 1 км от демаркационной линии к Мирополью с восточного направления. Передовая позиция ВС РФ под огнём ВСУ.
1:26 50.993179,35.316483
Источник 21+
Геопривязка
#ru
18.04.26 Краснополье - Таратутино
Позиционные боевые действия в Сумской зоне безопасности.
Передовая позиция ВС РФ в Таратутино подверглась обстрелу ВСУ. ВС РФ продвинулись в Сумской области на 3,5 км и достигли новых позиций в населённом пункте.
0:43 50.728385, 35.375816
Источник 21+
Геопривязка
#ru
16.03.26 Северск - Резниковка
Активные боевые действия в районе Северска.
Пехотная атака ВС РФ в Резниковке. Штурмовая группа зачищает позицию ВСУ в жилой застройке и увеличивает зону контроля на 700 метров.
48.838569,37.977290
Источник https://t.me/OMSBr_123/1754
Геопривязка
#ru
13.04.26 Великая Новосёлка - Александроград
Активные боевые действия в районе Великой Новосёлки.
Военнослужащие ВС РФ занимают новые позиции под огнём противника на рубеже Искра - Александроград. Увеличение зоны контроля ВС РФ на 2,5 км по фронту на левом берегу реки Волчья.
0:26 48.010070,36.619011
Источник 21+
Геопривязка
#ru
12.04.26 Сумы - Мирополье
Позиционные боевые действия в Сумской зоне безопасности.
Военнослужащие ВС РФ попали под обстрел ВСУ
западнее посёлка Мирополье. ВС РФ продвинулись в Сумской области увеличив зону контроля до 3 км от демаркационной линии.
51.037774, 35.344966
Источник 21+
Геопривязка
#ru
11.04.26 Константиновка - Долгая Балка
Позиционные боевые действия в районе Горловки.
Передовая позиция ВС РФ в жилой застройке Долгой Балки под огнём дронов ВСУ. ВС РФ продвинулись на 1 км к северу от Степановки и заняли новые позиции в южной части посёлка Долгая Балка.
0:14 48.481047, 37.607169
Источник 21+
Геопривязка
#ru
11.04.26 Краснополье - Новодмитровка
Позиционные боевые действия в Сумской зоне безопасности.
Штурмовые подразделения ВС РФ продвинулись более 4,5 км в направлении на Краснополье и заняли новые позиции в восточной части Новодмитровки. Передовая позиция ВС РФ в жилой застройке посёлка под обстрелом с дрона ВСУ.
1:38 50.75527, 35.39651
Источник 21+
Геопривязка
#ru
11.04.26 Константиновка - Степановка
Позиционные боевые действия в районе Горловки.
Передовая позиция ВС РФ в окрестностях Степановки подверглась обстрелу со стороны ВСУ. ВС РФ продвинулись более1.5 км и вышли на северные окраины Степановки.
0:39 48.473420,37.613850
Источник 21+
Геопривязка
#ru
06.04.26 Северск - Никифоровка
Активные боевые действия в районе Северска.
Атака ВС РФ пехотным подразделением севернее Никифоровки. Штурмовая группа зачищает позицию ВСУ. ВС РФ продвинулись около 2 км и увеличили зону контроля на рубеже Никифоровка - Каленики.
48.80452, 37.92016
Источник 21+
Геопривязка
#ru
06.04.26 Покровское - Берёзовое
Позиционные боевые действия в Днепропетровской зоне безопасности.
Передовые позиции ВС РФ в Берёзовом подверглись обстрелу ВСУ. ВС РФ заняли ряд новых позиций в посёлке увеличив зону контроля на 1 км.
0:19 47.871420,36.492084
1:13 47.874686,36.491471
Источник 21+
Геопривязка
#ru
31.03.26 Северск - Кривая Лука
Активные боевые действия в районе Северска.
Атака ВС РФ подразделением легких мотострелков около Кривой Луки. Штурмовик ВС РФ попал под обстрел ВСУ на трассе к посёлку. ВС РФ увеличили зону контроля выйдя на рубеж Каленики-Кривая Лука.
0:41 48.860286,38.001178
0:43 48.859195,37.930673
Источник 21+
Геопривязка
Геопривязка так же по https://t.me/creamy_caprice/11418?single
#ru
27.03.26 Красноармейск - Белицкое
Позиционные боевые действия в районе Красноармейска.
ВС РФ заняли ряд новых позиций в восточной части Белицкого. Передовые позиции в жилой застройке под огнём ВСУ . Продвижение ВС РФ более 600 метров.
0:06 48.40801, 37.1914
0:18 48.40476, 37.19765
Источник 21+
Геопривязка
#ru