DevNotes Live
6 subscribers
60.9K photos
8.94K videos
172 files
24.7K links
Автоматический агрегатор IT ресурсов в Telegram (@devnotes_robot)
Информация: https://t.me/devnotes_live/121
Download Telegram
​​Gqless - GraphQL клиент, в котором не нужно писать запросы

Работает в рантайме с помощью Proxy API, который смотрит, какие поля были запрошены.

Например:

const { countries: { flag } } = useQuery()

создаст GraphQL запрос query { countries { flag } }

Из фич:

- Типы из коробки
- Работает с React, включая Suspense и хуки
- Готов к использованию в продакшене (поддерживает кэширование, SSR и т.д.)

#graphql #jslib #javascript #react #frontend #webdev
apollo-datasource-http — Оптимизированный HTTP Data Source для Apollo GraphQL сервера

- JSON по умолчанию
- поддержка HTTP/2 (нужен Node.js 15+)
- Использует got для HTTP запросов
- LRU (least recently used) кэширование для уменьшения нагрузки на сервер
- Поддержка AbortController для ручной отмены запросов
- Поддержка Apollo Cache Storage

#jslib #graphql #backend #webdev #apollo #nodejs #javascript
apollo-datasource-http — Оптимизированный HTTP Data Source для Apollo GraphQL сервера

- JSON по умолчанию
- поддержка HTTP/2 (нужен Node.js 15+)
- Использует got для HTTP запросов
- LRU (least recently used) кэширование для уменьшения нагрузки на сервер
- Поддержка AbortController для ручной отмены запросов
- Поддержка Apollo Cache Storage

#jslib #graphql #backend #webdev #apollo #nodejs #javascript
Адаптация Relay для большой кодовой базы

На прошедшем React Conf 2021 был представлен новый компилятор Relay для оптимизации GraphQL-запросов — "Introducing the new Relay compiler".

Relay — это фреймворк для работы с GraphQL в React-приложениях. При использовании Relay компоненты декларативно описывают необходимые им данные с помощью GraphQL-фрагментов. Компилятор Relay на этапе сборки приложения обходит компоненты и подготавливает оптимизированный GraphQL-запрос на базе этих фрагментов.

Скорость компилятора с ростом кодовой базы Facebook постепенно ухудшалась, поэтому его переписали c JavaScript на Rust. Скорость работы компилятора улучшилась в пять-семь раз. Кроме улучшения производительности новый компилятор подготовил платформу для дальнейшего улучшения Relay. Например, благодаря ему появилась поддержка новой директивы @required для упрощения работы с данными. Также этот компилятор лежит в основе расширения для VSCode для поддержки автодополнения имён полей в GraphQL-фрагментах. Расширение на данный момент недоступно для внешних пользователей, так как над ним ещё ведётся работа.

#react #graphql #rust

https://relay.dev/blog/2021/12/08/introducing-the-new-relay-compiler/