open atlas

browser

Браузер и фронтенд-рантайм

Что на самом деле происходит внутри браузера, когда страница загружается и работает: как планируется JavaScript, как рисуются пиксели и где прячутся тормоза.

9 юнитов·83 уроков·~50 ч

Начать трек
00

С нуля

Перед senior-материалом: что вообще такое браузерный рантайм и горстка слов, которые остальной трек считает уже знакомыми.
01

Event loop

Один поток, две очереди, один шаг рендеринга — и всё, что происходит когда любой из них стопорится.
02

Пайплайн рендеринга

Шесть стадий, два потока, один бюджет 16.67 мс — как байты становятся пикселями и что разрушает бюджет.
03

Внутренности V8

Четыре JIT-уровня, hidden classes, inline caches, Orinoco GC и deopt-loop — механизмы, делающие один и тот же JS быстрее или медленнее в 100 раз.
04

Воркеры

Вычисления вне главного потока, сетевой прокси и разделяемая память — три воркер-примитива и архитектурные ошибки, которые они не могут решить.
05

React fiber-реконсилер

Fiber — JS-объект, чьё связно-списочное дерево позволяет React приостанавливать, возобновлять и приоритизировать рендеринг — а механизм bailout удерживает большие UI быстрыми.
06

Стратегии рендеринга: SSR, SSG, ISR, streaming, RSC — и цена гидратации

SSG рендерит один раз на билде; SSR — на запрос; ISR обновляется по расписанию; streaming сбрасывает оболочку первой. Гидратация — отдельная ~2× цена сделать этот HTML интерактивным — RSC и острова сокращают, что нужно гидрировать.
07

Core Web Vitals: LCP, INP и CLS

Три полевые метрики, по которым Google оценивает страницы — быстро ли появилось (LCP), отвечает ли (INP), стоит ли на месте (CLS)?
08

Всё вместе

Загрузка страницы — эстафета через сеть, парсинг, отрисовку и гидратацию — завершающий раздел трассирует все восемь слоёв, называет пять мест, где производство стабильно ломается, и даёт трёхходовую дисциплину для диагностики и исправления каждого из них.

Проекты по этому треку

Guided-проекты, которые закрепляют изученное здесь.

◆ Проекты

Совместные курсоры

Показать живой курсор и выделение каждого подключённого пользователя в общем документе, без конфликтов, через WebSocket.

◆ Проекты

Палитра команд

Палитра команд ⌘K с нечётким ранжированием, асинхронными источниками действий и полным клавиатурным управлением (стрелки, Enter, Escape, области видимости) — интерактивный слой, который нужен каждому профессиональному инструменту.

◆ Проекты

Офлайн-синхронизация PWA

Notes PWA с офлайн-приоритетом: локальная очередь записей (IndexedDB), которая синхронизируется при переподключении через last-writer-wins, service worker для кеширования ресурсов и background sync для пропущенных записей.

◆ Проекты

Личная страница-портфолио

Собери одностраничный сайт о себе на чистом HTML, CSS и капле JavaScript — без фреймворка, без сборки, просто файлы, которые открываются в браузере. В итоге у тебя будет что показать, и ты по-настоящему поймёшь каждую строчку, потому что написал её сам.

◆ Проекты

Виртуальная таблица данных

Отрисуй и плавно прокручивай 100 тыс. строк на 60fps с windowing-виртуализацией, залипающими заголовками и полной клавиатурной навигацией — без библиотек, только математика.

Следующий трек

Архитектура фронтенда

Как устроить настоящее фронтенд-приложение: где хранить данные, как их загружать и как не дать растущему коду превратиться в кашу.