RU

Место действия

Активно развивающееся поселение фронтендеров, уверовавшее в ApolloClient 3. Жители поселения обычно немногословны и используют черную магию кодогенерации. Для защиты своего быта от набегов варваров активно используют TypeScript и Eslint. Основной промысел жителей — создание SPA-приложений.

Мораль

Показать, как использовать ApolloClient 3 с кодогенерацией, со статическим анализом и минимум бойлерплейта. Показать возможности быстрого поиска ошибок в постоянно изменяющихся требованиях.

Протагонисты

  • GraphQL — язык запросов, для получения данных с бэкенда.
  • ApolloClient 3 — стейт-менеджер для хранения и обновления данных, полученных через GraphQL.
  • GraphQL Code Generator – утилита для генерации хуков и тайп-дефинишенов из .graphql-файлов.
  • TypeScript — статический типизированный JavaScript, дающий возможность проводить статический анализ кода приложения.
  • Eslint — линтер, позволяющий проверять код на соответствие принятого code style в проекте. Плюс плагины prettier, @graphql-eslint/eslint-plugin.

Второстепенные персонажи

  • VSCode — бесплатный и навернутый редактор кода с плагином graphql.vscode-graphql.
  • NextJS — фреймворк для React, который снимает головную боль роутингом, билдом приложения и его рантаймом.
  • Ant.design — живой UI-kit с приятными компонентами.

Антагонисты

  • Бэкендеры, любящие часто менять API.
  • Фронтендеры, любящие грязный код (например, табы вместо пробелов).
  • Boilerplate-код — детская травма, полученная от Redux.
  • Развесистый Data Domain с кучей связей.

Спикеры

Павел Черторогов
Павел Черторогов

Архитектор информационных систем, опенсорс-мейнтейнер. Сделал более 15 докладов о GraphQL. Обладает обширными практическими знаниями по бэкенду, фронтенду, администрированию и построению архитектуры. В 2016 начал разработку graphql-compose (генератора GraphQL-схем). Написал много материала о GraphQL на русском – https://github.com/nodkz/conf-talks. В 2019 начал формировать best practice по дизайну GraphQL-схем – https://graphql-rules.com.

Telegram – https://t.me/graphql_ru