Какие инструменты используешь при работе с TypeScript

Ответ

TypeScript — мощный инструмент, и для комфортной работы с ним я использую:

  1. TS Compiler (tsc) — базовый компилятор с настройкой через tsconfig.json.
  2. ESLint + @typescript-eslint — линтинг с TypeScript-правилами.
  3. Prettier — форматирование кода, интегрируется с ESLint.
  4. Jest + ts-jest — тестирование с поддержкой TS.
  5. Webpack/Rollup — сборка с ts-loader или @rollup/plugin-typescript.

Пример tsconfig.json:

{
  "compilerOptions": {
    "target": "ES2020",
    "module": "ESNext",
    "strict": true,
    "esModuleInterop": true
  }
}

Для быстрого прототипирования — Vite или TS Playground. В IDE — VSCode с плагинами для автодополнения и рефакторинга.

Ответ 18+ 🔞

Да ты посмотри, какой у нас тут серьёзный разговор про TypeScript! Прям как на конференции, блядь. Ну ладно, давай я тебе на человеческом языке объясню, как я с этой мощной хуйней работаю, чтобы не сойти с ума.

Первое дело, конечно, TS Compiler (tsc). Это как наш главный надзиратель, который из моего красивого TypeScript-кода делает что-то понятное для браузера или Node.js. А командует он всем через файлик tsconfig.json. Без него — нихуя не работает, или работает, но как попало.

Потом, чтобы не писать кривой код, как последний распиздяй, ставлю ESLint вместе с плагином @typescript-eslint. Эта связка следит за мной, как хитрая жопа, и орёт, если я где-то накосячил с типами или стилем. Чистота — залог здоровья, ёпта.

А чтобы код выглядел не как пиздопроебибна, а красиво, подключаю Prettier. Он дружит с ESLint, и они вместе так форматируют мой код, что хоть в рамку вешай. Удивление пиздец, как всё ровно становится.

Когда надо проверить, не сломал ли я всё к хуям, в дело идёт Jest с ts-jest. Пишу тесты, запускаю — и сразу видно, где я, мудак, ошибся. Без этого — волнение ебать, каждый раз как в русскую рулетку играешь.

Для сборки всего этого добра в один файл использую либо Webpack с ts-loader, либо Rollup с его TypeScript-плагином. Кто во что горазд, но суть одна: превратить кучу файлов во что-то работающее.

Вот тебе пример того самого tsconfig.json, без которого нихуя:

{
  "compilerOptions": {
    "target": "ES2020",
    "module": "ESNext",
    "strict": true,
    "esModuleInterop": true
  }
}

А если мне нужно быстро набросать какую-то идею, не заморачиваясь со сборкой, я открываю Vite или TS Playground в браузере. Закинул код — и сразу видно результат. Овердохуища удобно!

Ну и в довершение всего, в редакторе (я за VSCode) у меня настроены все плагины для автодополнения и рефакторинга. Нажимаешь пару кнопок — и код сам себя переписывает. Просто ебать мои старые костыли, как же раньше без этого жили! Вот и весь мой секрет, не такой уж и сложный, если разобраться.