Category : javascript

javascript
Моя идеальная структура заметок уснула. Теперь за порядок отвечает LLM

Как всё уснулоПолгода назад я построил себе в Obsidian продуманную структуру хранилища. PARA-подобная иерархия, аккуратные папки под проекты и области, шаблоны, теги. Я честно верил, что вот теперь заживём.Прошло несколько месяцев, и структура уснула. Не развалилась, не сломалась, именно уснула. Заметки продолжали появляться, но раскладывать их по местам мне стало банально лень. Каждая новая мысль требовала маленького ритуала: решить, куда её положить, как назвать, с чем связать, какие теги пов…

  • воскресенье, 5 июля 2026 г. в 00:00:09
javascript
Нужен ли здесь `useEffect`? 12 сценариев из React-код-ревью — от производного состояния до React 19…

Не каждый код «после рендера» должен становиться useEffect. Сначала ищем причину выполнения.На code review я регулярно встречаю один и тот же вопрос, только записанный разным кодом: «Как правильно синхронизировать эти значения через useEffect?» Часто полезнее спросить иначе:А эффект здесь вообще нужен?Я больше семи лет занимаюсь frontend-разработкой, последние два с лишним года руковожу кросс-функциональной командой, а раньше преподавал React. Со временем повторяющиеся замечания на review сложи…

  • воскресенье, 5 июля 2026 г. в 00:00:08
javascript
Часть II. Начала дискретной математики. SQL, Комбинаторика, Тервер за 15 минут. SQL, EBNF, XPATH в …

(Серия: Сельскому учителю в помощь)Оглавление***Вступление Раздел: переход к математикеГлазами математика: объяснение, генезисПредикаты: переход от объектов физики к образам математикиО точности языка Раздел: дискретные множестваДискретные множества или «ассемблер» числовой математикиИнженерная математика, полнота и детерминизмКольца и поля в эвмЭлементы комбинаторики. Декартово произведениеЭлементы комбинаторики. БулеанОтношениеОпределение функции отношениемВычислимость функцииКомпозиция функц…

  • суббота, 4 июля 2026 г. в 00:00:10
javascript
Mini bucket v 3.6.6: Мультиязычность, менеджер переводов и ворох системных исправлений

Данное изображение продукт генерации ИИ и моих скринов. Количество языков в данный момент на картинке не соответствует количеству готовых языковых пакетов!В одной из предыдущих статей я поднимал вопрос о том, что интерфейс системы целиком и полностью работает на Английском языке. Я пообещал, что в будущем реализую поддержку нескольких языков, и вот этот момент настал. Но, как это часто бывает, пока я копался в коде ради мультиязычности, попутно переписал пару системных модулей, чтобы они наконе…

  • суббота, 4 июля 2026 г. в 00:00:08
javascript
Spec-Driven Development на практике: как локальный job-агрегатор живёт без ревьюеров и не ломается

Разбор архитектуры локального клиента для агрегации вакансий, который я, senior backend-инженер, написал для себя — потому что искать работу через классические job-борды оказалось неожиданно трудоёмкой инженерной задачей. Внутри: фронтенд без сборки и без virtual DOM, маршрутизация с управляемым фокусом, клиентский API-слой поверх SSE, двухфазный сканер с детерминированным завершением, SSRF-envelope на DNS-pinning, локализация на 13 локалей с RTL, запуск всей системы одной командой и тестовая п…

  • суббота, 4 июля 2026 г. в 00:00:07
javascript
Оптимизация next.js monorepo приложения

Дисклеймер: Данный кейс основан на архитектуре нашего проекта (~2600 файлов). В проектах другого масштаба или с другой структурой зависимости результаты могут отличаться. Это не «серебряная пуля», а мой личный опыт оптимизации конкретной инфраструктуры.Буду краток, на проекте, где я сейчас работаю, мы с командой заметили огромную проблему со скоростью сборки и весом проекта после билда. Стек у нас React, Next.js, FSD Monorepo. Изначальный набор инструментов был такой:БилдTurbopackЛинтинг Eslint…

  • суббота, 4 июля 2026 г. в 00:00:05
javascript
SecretAuth – UX-решение для авторизации посредством приватного ключа

Мир сильно изменился с начала 21 века. В том числе, что касается систем авторизации. Мы продвинулись от авторизации через обычный логин и пароль к использованию централизованных сервисов вроде Google и Apple. Но так ли хорошо это для пользователя? И можно ли сказать, что его данные принадлежат ему?Давайте я покажу вам интересную вещь. SecretAuth – UX-решение для авторизации приватным ключом. Конечно, ничего нового в подписании данных приватным ключом, а потом в проверке их через публичный ключ …

  • суббота, 4 июля 2026 г. в 00:00:05
javascript
Как мы делаем онлайн-режим для браузерной инди-игры, когда бюджет на сервера — $10 в месяц

В прошлых статьях мы рассказывали про архитектуру ГИГАХРУЩА — браузерного survival horror с процедурной генерацией, WebGL-рейкастером и полноценным симулируемым миром (A-Life, Самосбор, физика) без использования готовых движков вроде Unity или Godot. Проект работает полностью локально, загружаясь в браузер за секунды.Но что, если мы хотим добавить мультиплеер, где игроки смогут вместе ходить по одним и тем же бесконечным бетонным коридорам, встречать друг друга, отстреливаться от монстров и пря…

  • пятница, 3 июля 2026 г. в 00:00:07
javascript
Point0 — фулстек TypeScript-фреймворк на Bun и React, о котором я мечтал

Хочу анонсировать свой фреймворк Point0. Это первый Bun FullStack фреймворк сопоставимый по функционалу с Next.js и TanStack Start. Однако, имеет кардинально другой DX, ради которого и был создан.Мне всегда не нравились существующие фреймворки, особенно Next.js и Remix (React Router). Но я думал, что, видимо, по-другому фреймворки просто не получаются, поэтому и не делают. А громоздкость, чужие строгие соглашения, неповоротливость архитектуры, это просто необходимое зло, с которым я должен смир…

  • четверг, 2 июля 2026 г. в 00:00:07