Обычный рабочий день фронтендера: git pull, npm install, запуск дев-сервера, правка компонента, прогон типов. За этот час успевают поработать язык, на котором написана операционная система, система контроля версий, рантайм, компилятор типов, сборщик и UI-фреймворк. И у каждого из этих инструментов есть автор — конкретный человек, который однажды сел и написал первую версию, потому что существующие решения его не устраивали.

Ниже — создатели открытых проектов, на которых стоит современная веб-разработка. Порядок не по популярности и не по алфавиту, а снизу вверх по стеку: от C и UNIX, без которых не было бы ничего остального, через языки и рантаймы — к библиотекам и фреймворкам, с которыми фронтендер имеет дело каждый день. По каждому — что создал, зачем, что с проектом происходит сейчас и как это изменило фронтенд.

В конце — пара слов о том, как сказать спасибо мейнтейнерам не только словами, и голосовалка: интересно, чей вклад в собственный стек читатели считают главным.

Деннис Ритчи — C и UNIX

Страница Денниса Ритчи на сайте Bell Labs

Американский учёный из Bell Labs, с которого удобно начинать любую генеалогию софта. В 1969 году вместе с Кеном Томпсоном он взялся за UNIX — операционную систему, идеи которой (всё из маленьких утилит, соединяемые через пайпы) живут сегодня в Linux и macOS. А около 1972-го Ритчи развил язык B, написанный Томпсоном, в язык C — и UNIX переписали на нём. Так операционная система впервые стала переносимой: чтобы запустить её на новом железе, хватало перекомпилировать код, а не писать всё заново на ассемблере.

В 1978 году вышла книга «Язык программирования C», которую Ритчи написал с Брайаном Керниганом. Именно она разнесла по миру программу, с которой до сих пор начинают изучение почти любого языка:

#include <stdio.h>

int main(void) {
    printf("hello, world\n");
    return 0;
}

В 1983 году Ритчи и Томпсон получили премию Тьюринга — аналог Нобелевской в информатике. Ритчи умер в октябре 2011 года, ему было 70. Для веб-разработчика C — не музейный экспонат: на нём написаны ядро Linux, интерпретаторы Python и PHP, а синтаксис с фигурными скобками и точками с запятой JavaScript унаследовал именно отсюда.

Фронтенд вырос в культуре командной строки UNIX. Скрипты в package.json — это команды оболочки, склеенные через && и пайпы; CI-сборка почти всегда идёт в Linux-контейнере; терминал macOS, в котором работает большинство фронтендеров, — прямой потомок UNIX. А каждый ответ сервера, сжатый gzip, проходит через zlib — библиотеку на C, встроенную и в браузеры, и в Node.js.

Бьёрн Страуструп — C++

Личный сайт Бьёрна Страуструпа stroustrup.com

Датский программист, который в 1979 году в тех же Bell Labs начал проект «C с классами»: взять скорость и близость к железу из C и добавить классы, наследование и более строгую типизацию, чтобы на языке можно было строить большие системы. В 1983-м проект получил имя C++, в 1985-м вышла первая книга Страуструпа о нём.

Ключевая идея, которую C++ принёс в массовое программирование, — ресурс живёт ровно столько, сколько живёт объект. Открыли файл в конструкторе — деструктор закроет его сам, даже если по пути вылетело исключение:

#include <fstream>

void saveReport() {
    std::ofstream file("report.txt");  // файл открыт
    file << "done\n";
}                                      // file уничтожен — файл закрыт автоматически

Фронтендер с C++ напрямую почти не сталкивается, но пользуется им постоянно: на C++ написаны движки браузеров и JavaScript-движок V8 (подробнее о том, как он устроен, в статье из чего состоит движок JavaScript). Язык продолжает развиваться через стандарты ISO: в 2026 году комитет утвердил C++26. Показательная деталь — в него вошли контракты (проверки пред- и постусловий функций), против которых публично выступал сам Страуструп. Автор языка давно не единоличный хозяин: решения принимает комитет.

Стоит отметить - всё, что фронтендер пишет в HTML и CSS, исполняет код на C++: разбор стилей, каскад, раскладку и отрисовку в Blink, WebKit и Gecko. Поэтому совет «анимируйте transform, а не top» — по сути знание о том, как устроен C++-движок рендеринга. А с WebAssembly C++ пришёл в браузер напрямую: редактор Figma написан на C++ и скомпилирован в Wasm — так в вебе появились приложения уровня десктопных.

Линус Торвальдс — Linux и Git

Профиль Линуса Торвальдса на GitHub с репозиторием linux

Финский студент Хельсинкского университета 25 августа 1991 года написал в интернет-конференцию, что просто в качестве хобби делает небольшую операционную систему «для себя», ничего серьёзного и профессионального. Из этой любительской затеи выросло ядро Linux. Сегодня оно работает на большинстве серверов в мире, на смартфонах с Android, в роутерах, телевизорах и, скорее всего, внутри Docker-контейнера, в котором крутится ваш бэкенд.

Второй проект появился в 2005 году вынужденно. Разработка ядра шла в проприетарной системе BitKeeper, и когда бесплатную лицензию для сообщества отозвали, Торвальдс за несколько недель написал собственную распределённую систему контроля версий — Git. Уже летом того же года он передал поддержку Джунио Хамано, который ведёт проект до сих пор. Базовый цикл работы с Git с тех пор почти не изменился:

git switch -c fix-header       # новая ветка от текущей
git add src/header.css
git commit -m "Поправил отступы в шапке"
git push -u origin fix-header  # публикуем ветку и связываем с удалённой

Git готовится к первому мажорному релизу за двадцать лет. Для Git 3.0 разработчики уже объявили главные изменения: ветка по умолчанию в новых репозиториях — main вместо master, хеш SHA-256 вместо SHA-1 для новых репозиториев и обязательный Rust для сборки самого Git. Твёрдой даты выхода пока нет. Ядро Linux тем временем тоже меняется: в конце 2025 года мейнтейнеры сняли с поддержки Rust в ядре пометку «экспериментальная». 

Git сделал возможным GitHub, а GitHub — нынешний open source во фронтенде: пулл-реквесты, код-ревью, issues, пакеты npm с исходниками на виду. Деплой на Vercel, Netlify или GitHub Pages сводится к git push, превью-сборка появляется для каждой ветки, а pre-commit хуки (husky, lint-staged) прогоняют линтер ещё до коммита. Linux — среда, где всё это крутится: CI-раннеры, Docker-образы с Node и серверы, которые отдают ваш бандл.

Гвидо ван Россум — Python

Профиль Гвидо ван Россума на GitHub

Нидерландский программист, который на рождественских каникулах 1989 года в амстердамском исследовательском институте CWI начал писать язык для себя, чтобы было чем заняться. Первая публичная версия Python вышла в феврале 1991-го. Название — не про змею, а в честь британского комедийного шоу «Летающий цирк Монти Пайтона».

Главная ставка Python — читаемость: отступы вместо фигурных скобок, минимум служебных символов, код читается почти как псевдокод:

posts = [{"title": "Flexbox", "views": 420}, {"title": "Grid", "views": 1310}]

popular = [p["title"] for p in posts if p["views"] > 1000]
print(popular)  # ['Grid']

Почти тридцать лет ван Россум носил шутливый титул BDFL (Benevolent Dictator For Life — «великодушный пожизненный диктатор»): последнее слово в спорах о языке оставалось за ним. В 2018 году, устав от тяжёлой дискуссии вокруг оператора :=, он сложил с себя эти полномочия, и с тех пор языком управляет выборный руководящий совет. В том же году его избрали почётным членом Музея компьютерной истории.

А в октябре 2025 года в Python 3.14 появилась официально поддерживаемая сборка без глобальной блокировки интерпретатора (GIL). Раньше эта блокировка не давала нескольким потокам по-настоящему работать параллельно. Теперь есть отдельная версия интерпретатора python3.14t.

Фронтендеру Python чаще всего встречается в скриптах сборки, парсерах и ML-бэкендах. Python повлиял на JavaScript напрямую. Генераторы и yield в 2006 году были перенесены в JavaScript 1.7 именно из Python, оттуда они попали в ES2015, и на них до появления async/await держались немало библиотек, а некоторые и до сих пор держатся. Шаблонизатор Nunjucks от Mozilla — порт питоновского Jinja2. И бытовая классика: python3 -m http.server — самый быстрый способ поднять локальный сервер, чтобы открыть вёрстку не через file://.

Расмус Лердорф — PHP

Профиль Расмуса Лердорфа на GitHub

Датско-канадский программист, который в середине 90-х написал набор CGI-скриптов на C, чтобы следить, кто заходит на его онлайн-резюме. Набор назывался Personal Home Page Tools, и 8 июня 1995 года Лердорф выложил его в открытый доступ. Языком в привычном смысле PHP стал позже: третью версию переписали Зеев Сураски и Энди Гутманс, они же потом сделали движок Zend.

Лердорф никогда не скрывал, что PHP рос органически, без большого плана — отсюда знаменитая непоследовательность имён в стандартной библиотеке. Но именно низкий порог входа сделал PHP языком, на котором написаны WordPress, MediaWiki и огромная часть веба. Современный PHP далеко ушёл от шаблонов 90-х: в PHP 8.5 (ноябрь 2025) появился оператор-конвейер, который передаёт значение по цепочке функций слева направо:

<?php
$slug = '  Grid Layout  '
    |> trim(...)
    |> strtolower(...)
    |> fn($s) => str_replace(' ', '-', $s);

echo $slug; // grid-layout

Кстати, fruntend тоже работает на PHP — на фреймворке Laravel. Так что эту страницу вам сейчас отдаёт наследник тех самых скриптов для подсчёта посетителей резюме.

PHP сделал нормой идею, к которой фронтенд потом вернулся: страница — это шаблон с данными, и собирается он на сервере. Расширение XHP, позволявшее в Facebook писать разметку прямо в PHP-коде, стало прообразом JSX, а серверные компоненты и SSR в Next.js и Nuxt нередко в шутку называют «возвращением к PHP». Плюс WordPress, на котором держится больше 40% сайтов: вёрстка тем для него до сих пор остаётся огромной частью коммерческого фронтенда.

Брендан Айк — JavaScript

Профиль Брендана Айка на GitHub

В списке про инструменты разработчика без этого имени не обойтись: Айк написал язык, на котором работает весь интерактивный веб. В мае 1995 года в Netscape ему поручили сделать простой скриптовый язык для браузера — и первый прототип появился примерно за десять дней. Язык успел побыть под именами Mocha и LiveScript, но перед релизом его переименовали в JavaScript, чтобы прицепиться к шумихе вокруг Java. Чтобы язык не стал собственностью одной компании, его стандартизировали в Ecma International под именем ECMAScript, первая редакция вышла в 1997 году.

Спешка первых дней оставила следы, которые нельзя исправить, не сломав миллионы сайтов. Самый известный:

typeof null;       // 'object' — ошибка первой реализации, ставшая стандартом
typeof undefined;  // 'undefined'

// поэтому проверка на «настоящий» объект выглядит так:
const isObject = (value) => value !== null && typeof value === 'object';

Позже Айк стал одним из основателей проекта Mozilla, а затем — компании Brave, которая делает одноимённый браузер. Сам язык теперь развивает комитет TC39, новая редакция стандарта выходит каждый год.

Фронтенд как профессия существует потому, что в браузере оказался ровно один язык программирования. Всё, что фронтендер пишет, — TypeScript, JSX, шаблоны Vue — в итоге превращается в JavaScript, потому что ничего другого браузер не выполняет: WebAssembly дополняет JS, но прямого доступа к DOM у него нет. Свою роль сыграла и Mozilla, которую Айк помогал создавать: Firefox в 2000-х сломал монополию застывшего Internet Explorer 6, браузеры снова начали развиваться и следовать стандартам — без этого не было бы современных CSS и DOM API.

Грейдон Хоар — Rust

Профиль Грейдона Хоара на GitHub

Канадский программист, который в 2006 году начал Rust как личный проект. По легенде, поводом стал сломанный лифт в доме: прошивка упала из-за ошибки работы с памятью, и Хоар задумался, почему системный софт до сих пор пишут на языках, которые такие ошибки допускают. В 2009 году проектом заинтересовалась Mozilla, в 2010-м его объявили публично. Название Хоар объяснял по-разному, в том числе грибками-ржавчинниками (rust fungi), которых он считал удивительно живучими.

Главная идея Rust — владение (ownership): у каждого значения ровно один хозяин, и компилятор следит, чтобы никто не обращался к памяти, которая уже освобождена или передана другому:

fn main() {
    let title = String::from("fruntend");
    let moved = title;          // владение переехало в moved

    // println!("{}", title);   // ошибка компиляции: title больше ничем не владеет
    println!("{}", moved);
}

Хоар отошёл от руководства в 2013 году, за два года до выхода Rust 1.0 в 2015-м. Сегодня проектом управляет сообщество при поддержке Rust Foundation. Фронтенду Rust ближе, чем кажется: на нём написаны быстрые инструменты сборки — SWC, Lightning CSS, Rolldown и Oxc. Мало того, Rust приходил во фронтенд дважды. Сначала через браузер: Mozilla делала на нём экспериментальный движок Servo, и его CSS-движок Stylo в 2017 году попал в Firefox — стили там считаются параллельно на всех ядрах процессора. Потом через инструменты: Turbopack в Next.js, линтер-форматтер Biome, движок Tailwind CSS v4 работают в разы быстрее JS-предшественников, и пересборка за миллисекунды стала нормой. А wasm-pack позволяет скомпилировать Rust-модуль в WebAssembly и импортировать его в обычный JS-проект.

Андерс Хейлсберг — TypeScript

Профиль Андерса Хейлсберга на GitHub

Датский инженер, у которого в резюме сразу несколько языков. В 80-х он написал компилятор Turbo Pascal, в 90-х в Borland был главным архитектором Delphi, а в Microsoft спроектировал C#. В 2012 году Microsoft представила его следующий проект — TypeScript: надмножество JavaScript с необязательной статической типизацией, которое компилируется в обычный JS.

Ставка TypeScript — ловить ошибки до запуска, а не в продакшене. Любой корректный JS уже является корректным TS, а типы добавляются постепенно:

interface Post {
  slug: string;
  views: number;
  tags?: string[];
}

function formatViews(post: Post): string {
  return `${post.views.toLocaleString('uk-UA')} просмотров`;
}

formatViews({ slug: 'grid', views: '1310' });
// ошибка: тип 'string' нельзя присвоить типу 'number'

Хейлсберг по-прежнему ведущий архитектор языка, и самое громкое событие в истории TypeScript прошло при его прямом участии. Компилятор, написанный на самом TypeScript, перенесли на Go. TypeScript 6.0 (март 2026) стал последней версией на JavaScript, а TypeScript 7.0 (июль 2026) вышел уже с нативным компилятором, который собирает большие проекты на порядок быстрее. Синтаксис языка при этом не поменялся — поменялась скорость.

TypeScript изменил то, как фронтенд пишется в редакторе: автодополнение, переход к определению и безопасные переименования в VS Code (который сам написан на TypeScript) работают через языковой сервер TS — даже в обычных .js-файлах. Типы стали частью экосистемы: Angular с версии 2 написан на TypeScript, Vue 3 переписали на нём целиком, а для библиотек без собственных типов есть DefinitelyTyped и пакеты @types/*. Дошло и до рантаймов: Node.js с версий 22.18 и 23.6 запускает .ts-файлы, просто вырезая аннотации типов.

Райан Дал — Node.js и Deno

Профиль Райана Дала на GitHub

Американский разработчик, который в 2009 году на JSConf EU показал Node.js — способ запускать JavaScript на сервере поверх движка V8, с неблокирующим вводом-выводом. До Node язык жил только в браузере. После него фронтендер получил npm, сборщики, линтеры и дев-серверы на родном языке, а заодно возможность писать бэкенд без переключения на PHP или Python.

В 2012 году Дал отошёл от Node, а в 2018-м выступил с докладом «10 вещей, о которых я жалею в Node.js»: модули без явных разрешений на доступ к сети и диску, разрастание node_modules, отказ от промисов в ранних API. Там же он показал Deno — рантайм, в котором эти решения переиграны: TypeScript из коробки, веб-стандартные API и закрытый по умолчанию доступ к системе.

// server.ts
Deno.serve((request) => {
  const url = new URL(request.url);
  return new Response(`Запрошен путь ${url.pathname}`);
});

// запуск: доступ к сети нужно разрешить явно
// deno run --allow-net server.ts

В октябре 2024 года вышел Deno 2.0 с совместимостью с Node и npm-пакетами — признание того, что экосистему Node не переписать с нуля. Параллельно компания Дала с конца 2024 года добивается в патентном ведомстве США отмены торговой марки «JavaScript», которая принадлежит Oracle: по мнению Deno, слово давно стало общим названием языка. Дело на момент написания не закрыто.

Node сделал возможным серверный рендеринг на JavaScript: Next.js и Nuxt выполняют один и тот же компонент сначала на сервере, потом в браузере. Через Electron веб-технологии добрались до десктопа: VS Code, Slack и Discord — это HTML, CSS и JS. А Deno подтолкнул серверные рантаймы к веб-стандартам: fetch, Request/Response и Web Streams из браузера появились и в Node (fetch встроен с версии 18), так что один и тот же код теперь работает в браузере, на сервере и в edge-функциях.

Джаред Самнер — Bun

Профиль Джареда Самнера на GitHub

Американский разработчик, который устал ждать, пока соберётся фронтенд-проект, и решил сделать всё в одном быстром бинарнике. Bun — это рантайм, пакетный менеджер, сборщик и тест-раннер одновременно. Технически он отличается от Node и Deno сразу на двух уровнях: написан на языке Zig и работает не на V8, а на JavaScriptCore — движке из Safari. Первые публичные версии появились в 2022 году, стабильный Bun 1.0 — в сентябре 2023-го.

bun install          # ставит зависимости из package.json
bun run dev          # запускает скрипт, как npm run
bun test             # встроенный тест-раннер, совместимый с API Jest
bun build ./src/index.ts --outdir ./dist

Ставка на совместимость с Node позволяет пробовать Bun в существующем проекте, ничего не переписывая. В декабре 2025 года Bun купила Anthropic, разработчик ИИ-ассистента Claude: рантайм используется в её инструментах для программирования. Лицензия осталась прежней, MIT, разработку продолжает та же команда в открытом репозитории.

Главный эффект Bun — конкуренция. Он показал, что установка зависимостей и прогон тестов могут занимать секунды, а не минуты, и подстегнул остальных: за последние годы в Node.js появились встроенный тест-раннер (node --test), режим --watch, загрузка .env через --env-file и запуск TypeScript без сборки — то, что в Bun было из коробки. Для фронтендера Bun ещё и способ запустить .ts- или .jsx-файл одной командой, без настройки Babel или tsc.

Камиль Мышлевец — NestJS

Профиль Камиля Мышлевца на GitHub

Польский разработчик, который в 2017 году выпустил NestJS — фреймворк для серверных приложений на Node.js. Проблема, которую он решал, знакома всем, кто писал бэкенд на голом Express: минимализм хорош на старте, но в большом проекте каждая команда изобретает собственную структуру папок, внедрение зависимостей и слой валидации.

NestJS приносит готовую архитектуру, вдохновлённую Angular: модули, контроллеры, сервисы и декораторы на TypeScript. Под капотом по-прежнему Express (или Fastify), но код выглядит предсказуемо в любом проекте:

import { Controller, Get, Param } from '@nestjs/common';
import { PostsService } from './posts.service';

@Controller('posts')
export class PostsController {
  constructor(private readonly posts: PostsService) {}

  @Get(':slug')
  findOne(@Param('slug') slug: string) {
    return this.posts.findBySlug(slug);
  }
}

Мышлевец остаётся ведущим мейнтейнером фреймворка, вокруг которого выросла консалтинговая компания Trilon. Для фронтендера NestJS — один из самых комфортных входов в бэкенд: тот же TypeScript и знакомые по Angular паттерны.

NestJS сделал фулстек на одном языке не просто возможным, а удобным. В монорепозитории фронтенд и бэкенд делят одни и те же TypeScript-типы для запросов и ответов, а модуль @nestjs/swagger генерирует из контроллеров OpenAPI-схему — по ней утилиты вроде openapi-typescript собирают для фронтенда типизированный API-клиент. Переименовали поле на бэкенде — ошибка компиляции появляется во фронтенд-коде ещё до деплоя.

Джон Резиг — jQuery

Профиль Джона Резига на GitHub

Американский разработчик, который в январе 2006 года на BarCamp в Нью-Йорке показал jQuery. Тогда браузеры расходились буквально во всём: обработчики событий, AJAX и даже выбор элементов писались в Internet Explorer иначе, чем в Firefox. jQuery спрятала эти различия за одним коротким API на CSS-селекторах — и за пару лет стала стандартом де-факто.

// jQuery
$('.menu-toggle').on('click', () => $('.menu').toggleClass('is-open'));

// то же самое на современном DOM API
document.querySelector('.menu-toggle').addEventListener('click', () => {
  document.querySelector('.menu').classList.toggle('is-open');
});

Вторая половина примера — во многом заслуга самой jQuery: querySelector, classList и fetch вошли в стандарты потому, что jQuery доказала, насколько разработчикам нужен именно такой API. Библиотека при этом жива: в январе 2026 года, к двадцатилетию проекта, вышла jQuery 4.0 — первая мажорная версия почти за десять лет, без поддержки IE10 и старше. Сам Резиг много лет работал в Khan Academy и написал книгу «Секреты JavaScript-ниндзя».

jQuery сделала JavaScript языком, которым занимаются всерьёз: до неё скрипты на сайтах чаще копировали с форумов, после появились тысячи плагинов, готовые компоненты, и фронтенд-разработка начала превращаться в отдельную профессию. $.ajax сделал AJAX повседневной техникой, а $.Deferred с 2011 года приучил разработчиков к цепочкам .then() — за четыре года до того, как Promise вошёл в стандарт ES2015. И библиотека до сих пор стоит на большей части сайтов в интернете, во многом благодаря WordPress.

Джордан Уолк — React

Профиль Джордана Уолка на GitHub

Инженер Facebook, который в 2011 году собрал прототип FaxJS, будущий React. Интерфейсы соцсети становились всё сложнее, и ручная синхронизация DOM с данными превращалась в источник бесконечных багов. Идею Уолк подсмотрел у XHP, внутреннего PHP-расширения Facebook: описывать интерфейс декларативно, как функцию от состояния, и позволить библиотеке самой вычислить, что поменять на странице.

React заработал в ленте новостей Facebook, затем в Instagram, а в мае 2013 года его открыли на JSConf US. Поначалу публика приняла в штыки смешение разметки и логики в JSX — сегодня этот синтаксис знают все:

import { useState } from 'react';

export function LikeButton() {
  const [likes, setLikes] = useState(0);

  return (
    <button onClick={() => setLikes(likes + 1)}>
      Нравится: {likes}
    </button>
  );
}

Позже Уолк сделал ReasonML — синтаксис для OCaml, ориентированный на JS-разработчиков. А React за последние пару лет сменил и версию, и хозяина: в декабре 2024-го вышел React 19 с серверными компонентами и экшенами, в 2025-м — стабильный React Compiler, который сам расставляет мемоизацию. В феврале 2026 года Meta передала React, React Native и JSX в независимую React Foundation при Linux Foundation.

React закрепил модель, в которой сейчас находится почти весь фронтенд: интерфейс — дерево компонентов, данные текут сверху вниз, а при изменении состояния библиотека сама решает, что перерисовать. Компонентный подход изменил и работу с дизайном: дизайн-системы, Storybook и UI-библиотеки строятся из тех же «кирпичиков». Хуки 2019 года повлияли на соседей — авторы Composition API во Vue 3 прямо называли их источником вдохновения, а React Native дал веб-разработчикам выход в мобильные приложения на том же React.

Мишко Хевери — AngularJS и Qwik

Профиль Мишко Хевери на GitHub

Разработчик, который в 2009 году вместе с Адамом Абронсом начал проект, ставший AngularJS. Работая в Google, Хевери показал, что сделанное на нём приложение заняло во много раз меньше кода, чем исходная версия, и проект взяли под крыло компании. AngularJS популяризировал двустороннее связывание данных и внедрение зависимостей во фронтенде: поле ввода и текст на странице синхронизировались без единой строки ручного DOM-кода.

<div ng-app>
  <input ng-model="city" placeholder="Город">
  <p>Ближайший митап: <span ng-bind="city"></span></p>
</div>

Хевери участвовал и в переписанном с нуля Angular 2+, а заодно создал тест-раннер Karma. Его следующая большая идея — фреймворк Qwik, который он делал в Builder.io. Вместо гидратации, при которой браузер заново выполняет JavaScript всей страницы после серверного рендера, Qwik использует возобновляемость (resumability): страница приходит готовой, а код конкретного обработчика скачивается только тогда, когда пользователь до него дотронулся.

AngularJS сделал одностраничные приложения массовыми, особенно в корпоративной разработке, а вместе с ним во фронтенд пришли модульные тесты, внедрение зависимостей и привычная бэкендерам структура проекта. Команда Angular сыграла роль и в судьбе TypeScript: в 2015 году она отказалась от собственного надмножества AtScript и написала Angular 2 на TypeScript — первый крупный фреймворк на TS стал сильным аргументом для всей индустрии. А Qwik вместе с «островами» Astro сместил разговор о производительности с размера бандла на цену гидратации.

Эван Ю — Vue и Vite

Профиль Эвана Ю на GitHub

Разработчик, который работал в Google Creative Lab на AngularJS и захотел взять из него только то, что нравилось, — декларативные шаблоны и связывание данных, без тяжёлой архитектуры вокруг. Так появился Vue, первый публичный релиз вышел в феврале 2014 года. Ставка была на постепенное внедрение: Vue можно подключить к одной форме на старой странице, а можно построить на нём всё приложение (как устроена его реактивность — в статье о реактивности во Vue.js).

<script setup>
import { ref } from 'vue'

const likes = ref(0)
</script>

<template>
  <button @click="likes++" v-text="`Нравится: ${likes}`"></button>
</template>

Vue — редкий случай большого фреймворка, который живёт без корпорации за спиной, на спонсорские деньги сообщества. В 2020 году Эван Ю начал второй проект, Vite: дев-сервер, который отдаёт исходники как нативные ES-модули и поэтому стартует мгновенно. Сегодня это стандартный способ создать проект не только на Vue, но и на React, Svelte и Solid:

npm create vite@latest my-app
cd my-app
npm install
npm run dev

В 2024 году Эван Ю основал компанию VoidZero, которая собирает единый набор инструментов на Rust: сборщик Rolldown и набор утилит Oxc (парсер, линтер, форматтер). В марте 2026 года вышел Vite 8, где связку esbuild + Rollup заменил Rolldown — круг замкнулся: инструмент для JavaScript-разработчиков работает на языке, выросшем из личного проекта Грейдона Хоара.

Vue показал, что фреймворк может быть дружелюбным к тем, кто пришёл из вёрстки: однофайловые компоненты .vue держат шаблон, логику и стили рядом, в привычном HTML-виде. Vite изменил инфраструктуру всего фронтенда: на нём построены Nuxt, SvelteKit, Astro, SolidStart и React Router, тест-раннер Vitest использует ту же конфигурацию, а многосотстрочные конфиги webpack стали редкостью. Наконец, Эван Ю одним из первых показал, что мейнтейнер может работать над открытым проектом полный день на деньги сообщества: с 2016 года он живёт на поддержку через Patreon и спонсоров.

Как сказать спасибо не только словами

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

Начать проще всего с того, что уже лежит в проекте. npm умеет показать, какие из установленных зависимостей принимают поддержку:

npm fund
# my-app
# ├─┬ https://github.com/sponsors/yyx990803
# │ └── vue
# └─┬ https://opencollective.com/eslint
#   └── eslint

Ссылки берутся из поля funding в package.json пакета. Если у вас самих есть открытая библиотека, это поле стоит заполнить — так её пользователи узнают, куда нести благодарность:

{
  "name": "tiny-date-format",
  "version": "1.4.0",
  "funding": [
    { "type": "github", "url": "https://github.com/sponsors/your-name" },
    { "type": "opencollective", "url": "https://opencollective.com/tiny-date-format" }
  ]
}

Кнопку Sponsor в шапке репозитория на GitHub включает файл .github/FUNDING.yml:

github: your-name
open_collective: tiny-date-format

Деньги — не единственная валюта. Мейнтейнерам не меньше помогают:

  • баг-репорт с минимальным воспроизведением вместо «у меня не работает»;
  • правка опечатки или устаревшего примера в документации — самый простой первый пулл-реквест;
  • ответ на чужой вопрос в issues или дискуссиях, который мейнтейнеру не придётся писать самому;
  • обновление зависимостей до свежих версий: чем меньше пользователей сидит на старых мажорах, тем меньше веток приходится поддерживать.

А теперь голосовалка: интересно, чей вклад читатели считают главным именно для своего стека.