В журнал
Технологии30 апреля 2026 г.2 мин

Стек и инструменты, которые я использую

Какие технологии беру в проекты в 2026, что выкинул, и почему один и тот же стек подходит и интернет-магазину, и SaaS.


Меня часто спрашивают: «Какой стек у тебя сейчас?». Отвечаю развёрнуто — потому что выбор инструментов прямо влияет на стоимость владения и скорость доставки фич.

Фронтенд

Базовый набор для большинства проектов:

  • Next.js 16 (App Router, RSC по умолчанию)
  • React 19use, server actions, optimistic updates
  • Tailwind CSS v4 — без конфига, через @theme inline
  • shadcn/ui + Radix Primitives — копирую в репо, не тащу как зависимость

Раньше я тратил по неделе на «дизайн-систему с нуля». Сейчас shadcn даёт 80% UI за один вечер, а оставшиеся 20% — это и есть продукт.

Бэкенд

ЗадачаЧто используюПочему
APINext.js Route Handlers / tRPCОдин репо, типы между фронтом и бэком
База данныхPostgreSQL (Neon)Бесплатный tier, branching, нет vendor lock
ORMDrizzleТипобезопасность без рантайм-оверхеда
AuthClerk / Auth.jsЗависит от бюджета и SSO-требований
ОчередиVercel QueuesЗапустился в бете, заменил мне BullMQ

Пример конфига Drizzle

Вот так выглядит минимальная схема для простого магазина:

import { pgTable, serial, text, integer, timestamp } from "drizzle-orm/pg-core"
 
export const products = pgTable("products", {
  id: serial("id").primaryKey(),
  slug: text("slug").notNull().unique(),
  title: text("title").notNull(),
  priceMinor: integer("price_minor").notNull(),
  createdAt: timestamp("created_at").defaultNow().notNull(),
})
 
export type Product = typeof products.$inferSelect
export type NewProduct = typeof products.$inferInsert

Запрос:

const featured = await db
  .select()
  .from(products)
  .where(eq(products.featured, true))
  .limit(6)

Никаких генераторов, никакого prisma generate — всё статически выводится из схемы.

Деплой

Всё едет на Vercel. Причин три:

  1. Превью-окружение на каждый PR — клиент видит изменения до мерджа
  2. Edge-кэш и ISR работают «из коробки», не нужно настраивать CDN
  3. Логи и аналитика интегрированы — не лезу в три разных дашборда

Чего больше нет в моём стеке

  • Webpack — Turbopack уже стабилен
  • Redux — Server Components + useState решают 95% задач
  • Custom CSS-in-JS — Tailwind v4 + CSS variables

Горячие клавиши

Для быстрой навигации в редакторе использую Cmd + P для файлов и Cmd + Shift + F для глобального поиска.

Если интересно глубже разобрать какой-то блок — напишите, сделаю отдельный материал.