並び順

ブックマーク数

期間指定

  • から
  • まで

481 - 520 件 / 935件

新着順 人気順

graphqlの検索結果481 - 520 件 / 935件

  • エクサウィザーズのTLが実践する、開発が遅くならないテストの書き方 - エクサウィザーズ Engineer Blog

    この記事について この記事ではエクサウィザーズの介護記録AIアプリ「CareWiz ハナスト」(以下ハナスト)の開発スピードを維持するために、どのようにテストを書いているかをご紹介します。 内容としては基本的なことかと思うので、ハナスト開発ではどのような基本に則ってテストしているかという感じで読んでいただければ良いかと思います。 書いているのは誰? この記事はハナスト開発チームのテックリードをしている原(@haracane)が書いています。 ハナストチームでは主にNode.js&TypeScriptでバックエンドAPIを開発していてテストにはJestを使っています。 ちなみにこれまではKotlin&JUnitやRuby on Rails&Rspecなどで開発&テストをしたりしてました。 ハナストについて ハナストは簡単に言うと「音声入力で介護の記録をするアプリ」です。 以下の動画を見ていた

      エクサウィザーズのTLが実践する、開発が遅くならないテストの書き方 - エクサウィザーズ Engineer Blog
    • Articles

      Sign up for my newsletterStay up to date when I release courses, posts, and anything related to GraphQL

      • dein.vim でのプラグインの更新チェックを爆速にする - 永遠に未完成

        先日、Vim のプラグインマネージャである dein.vim に、プラグインの更新チェックを劇的に高速にする変更が取り込まれた。使うには設定が必要なので、その方法を紹介する。 dein.vim を最新版にする 言うまでもないが、まずは dein.vim を最新版にする。 :call dein#update('dein.vim') GitHub の Personal Access Token を生成する この機能を使うには、GitHub の Personal Access Token を用意する必要がある。 https://github.com/settings/tokens GitHub にログインして上記のページにアクセスし、Generate new token を押す。token の用途がわかりやすいように名前を付け、Generate token を押す。追加の権限は必要ない。生成され

          dein.vim でのプラグインの更新チェックを爆速にする - 永遠に未完成
        • Gatsby.jsのTypeScript化 2020

          個人で Gatsby.js を使い始めたのですが、検索して見つかる Gatsby.js の TypeScript 化についての記事の情報が少し古かったので、自分で書き直してみました。 順を追ってスターターパッケージを TypeScript 化していきます。 なお今回のコードは全て下記リポジトリにあります。 もし、何かエラーになった際は参照してみてください。 この記事は以下のバージョン時点の情報です。 Gatsby.js: 2.24.66 gatsby-plugin-typegen: 2.2.1 0. プロジェクトの作成 gatsby コマンドを使うめにgatsby-cliの追加。

            Gatsby.jsのTypeScript化 2020
          • GraphQL, TypeScript, React を用いて型安全に社内システムをリニューアルした話 | MEDLEY Developer Portal

            2020-11-06GraphQL, TypeScript, React を用いて型安全に社内システムをリニューアルした話こんにちは。メドレーのエンジニアの山田です。現在、医療介護求人サイト「ジョブメドレー」のチームで開発を担当しています。 今回、ジョブメドレーの社内スタッフが利用する社内システムをリニューアルした事例をご紹介します。 リニューアル対象はバックエンド領域も含まれますが、本記事ではフロントエンドの話を中心にご紹介します。 また、弊社デザイナー酒井が以前投稿した デザイナーがデザインツールを使わずに、React を使ってデザインした話 も関連しているので、よろしければあわせてご覧ください。 リニューアルの背景社内システムでは、求人サイト「ジョブメドレー」を利用する求職者に関する情報や求職者の応募状況を管理しています。 前回のリニューアルから時間が経ち、複雑性が高くなってきました

              GraphQL, TypeScript, React を用いて型安全に社内システムをリニューアルした話 | MEDLEY Developer Portal
            • How to GraphQL with Ruby, Rails, Active Record, and no N+1—Martian Chronicles, Evil Martians’ team blog

              You work on a mature web application that cleanly separates backend and frontend. The server-side code, written in Ruby, is mostly responsible for translating HTTP requests into SQL statements (with the help of an ORM) through rich and well-documented API. You choose GraphQL over REST to streamline your endpoints, but your database is not happy with all the extra queries. After much searching, you

                How to GraphQL with Ruby, Rails, Active Record, and no N+1—Martian Chronicles, Evil Martians’ team blog
              • 初めて Apollo Client を使うことになったらキャッシュについて知るべきこと - WASD TECH BLOG

                この記事は GraphQL Advent Calendar 2020 2日目の記事です。 前回は mtsmfm さんの記事でした。 GraphQL は REST などと同じく、DB のテーブルをそのまま露出するとは限らない - Qiita はじめに こんにちは、 shinnoki です。 フロントエンドで用いる GraphQL のクライアントは複数の選択肢が存在しますが、 React + TypeScript なプロジェクトでは Apollo Client が採用されることが多いのではないでしょうか。 Apollo Client の特徴のひとつに強力なキャッシュ機構がありますが、逆に理解しないと意図しない挙動になることもあったりと、初学者にとってはなかなかイメージを掴みづらいものになっています。 まず最初に結論として、「初めて Apollo Client を使うことになったけど、とにかく早

                  初めて Apollo Client を使うことになったらキャッシュについて知るべきこと - WASD TECH BLOG
                • クエリ結果を軸としたGraphQLのエラーハンドリング - indilog

                  この記事は GraphQL Advent Calendar 2020 6日目の記事です。 前回の記事は @fossamagna さんの AppSyncのGraphQL APIを@apollo/clientで呼び出す でした。 この記事では以下の記事で紹介されているGraphQLのエラーハンドリングの手法についての紹介と、それを利用するクライアントサイドのメリットについての考察をしていきます。 sachee.medium.com アプリケーションで生じる様々なエラーと、GraphQLの一般的なハンドリング GraphQLはリクエストに対してエラーが発生した場合、一般的にレスポンス中のerrorsというキーの中にそのエラーに関する情報を詰め込んだレスポンスを返すというプラクティスがあります。 "errors": [ { "message": "....", "locations": [ ...

                    クエリ結果を軸としたGraphQLのエラーハンドリング - indilog
                  • GitHub - WebAppPentestGuidelines/graphQLGuideLine

                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                      GitHub - WebAppPentestGuidelines/graphQLGuideLine
                    • 「注文サービスをサーバーレスで作ってみた」JAWS DAYS 2020登壇資料 #jawsug #jawsdays #jawsdays2020 | DevelopersIO

                      「注文サービスをサーバーレスで作ってみた」JAWS DAYS 2020登壇資料 #jawsug #jawsdays #jawsdays2020 本記事ではAWS上の分散トランザクションを構築する方法を紹介させて頂きたいと思います。あと、そのトランザクションの結果をストリーミングさせ、クライアントにデータが自動で連携される仕組みについても紹介させて頂きます。最後に、私が作ってみたサービスのフルコードのGithubレポジトリーを共有致します。 本記事は、オンラインで開催された「JAWS DAYS 2020」の登壇記事となります。 はじめに こんにちは、コンサル部のテウです。 去年の年末年始休暇中、マイクロサービスのいろんな実装パターンについて勉強をしましたところ、分散トランザクションのことにすごく興味が出来ました。そもそもトランザクションの意味だけが分かっていたレベルだったのですが、もっと詳し

                        「注文サービスをサーバーレスで作ってみた」JAWS DAYS 2020登壇資料 #jawsug #jawsdays #jawsdays2020 | DevelopersIO
                      • graphql-guardでGraphQL APIのアクセス制限をシンプルに実現する方法を考えてみた - Speee DEVELOPER BLOG

                        ※この記事は、Speee Advent Calendar23日目の記事です。 昨日の記事はこちら tech.speee.jp どうも、最近は専らgraphql-rubyと戯れている石井です。 みなさん、graphql-rubyを使っていて「このTypeのこのフィールドはAdminユーザにしか見せたくないんです!」といったようにアクセス制限したくなる時が3日に1回ぐらいはやって来るのではないでしょうか。 今回はRailsとgraphql-rubyでAPIを作る際にgraphql-guardを使ってシンプルなアクセス制限を実現する方法をソースコードを織り交ぜつつ紹介してみたいと思います。 ※本記事で記載するコードは全て実装の雰囲気を伝えることが目的のサンプルコードなのでご了承ください。 想定する環境 この記事では下記のバージョンの言語、ライブラリの利用を想定しています。 Ruby: 2.7.5

                          graphql-guardでGraphQL APIのアクセス制限をシンプルに実現する方法を考えてみた - Speee DEVELOPER BLOG
                        • Incremental Data Delivery with GraphQL defer and stream

                          これは GraphQL Advent Calendar 2020 16 日目の記事です(しかも 12 日目の記事と結構内容が被ってしまって切ない…) このエントリでは、GraphQL の @defer と @stream というディレクティブについて書いていく。色々書いていたら割と長くなってしまったが、内容は下記のとおり。 このディレクティブの登場背景ディレクティブの Specgraphql-js を用いた利用サンプル@defer / @stream とは何か@defer と @stream は共にデータの取得方法を制御するためのディレクティブだ。名前が示すとおり、クエリ全体から特定の箇所の読み込みを遅延させたり、ストリーミングさせることができる。2020 年末現在、GraphQL spec としては Stage 2(草案段階)であり、参照実装である graphql-js にも実装が存在し

                            Incremental Data Delivery with GraphQL defer and stream
                          • Ending Support of Netlify Graph

                            Hello all ! As of May 1st 2023 Netlify Graph has been deprecated. We have received loads of feedback and after much consideration we have decided to discontinue support of this product. We will be focusing our efforts on enabling developers to build composable websites, stores, and apps with greater efficiency, and we look forward to what the future holds. Thank you for helping us be a part of our

                              Ending Support of Netlify Graph
                            • RustでGraphQLやってみるその3(関連付けされたデータを扱う) - 虎の穴開発室ブログ

                              皆さんこんにちは、虎の穴ラボのY.Fです。 GraphQLシリーズとして連載してる記事の4つめの記事になります。(本エントリー2回+番外編1回) 前回までの記事はこちら (前回の記事) toranoana-lab.hatenablog.com (番外編) toranoana-lab.hatenablog.com さて、今回はGraphQLを使って関連するデータを扱ってみたいと思います。 データの関連付けを行う 前回記事までで作成していた Photo テーブルの親テーブルとして Post テーブルを作ることにします。 マイグレーション方法などは前回記事を参照してください。ここではテーブル作成、カラム追加のSQLのみ記載します。 Postsテーブル作成 --- Your SQL goes here CREATE TABLE posts ( id SERIAL NOT NULL PRIMARY

                                RustでGraphQLやってみるその3(関連付けされたデータを扱う) - 虎の穴開発室ブログ
                              • StrapiでHeadless CMS+高速サイト制作を始めよう(インストール・使い方など導入解説) | 株式会社ウェブ企画パートナーズ

                                Strapiは話題のHeadless CMS Headless CMSとは? Headless CMSは、コンテンツ管理などのバックエンド機能のみを提供するCMSです。 ユーザーに直接提示されるビュー=フロントエンドを管理せず、APIを通してコンテンツを受け渡します。そのことで、フロントエンドの自由度が上がり、開発効率の向上も期待できます。 最新技術を用いたウェブサイトはもちろん、スマホアプリ、デジタルサイネージなど、様々なプラットフォームと連携させることが可能です。 Headless CMSについてはこちらの記事で詳しく説明しています。 Headless(ヘッドレス) CMSとは? 代表的な10のCMS比較! Strapiのメリット Headless CMSの中で、近年注目を集めているのがStrapiです。 コーディングなしでも簡単&高速にAPI開発が可能な、Node.jsベースのCMS

                                  StrapiでHeadless CMS+高速サイト制作を始めよう(インストール・使い方など導入解説) | 株式会社ウェブ企画パートナーズ
                                • Announcing Stellate has acquired FastQL, the first GraphQL CDN

                                  Three years ago Zach was building an app and ran into a problem — there was no easy way to cache the GraphQL API he was working with. He decided to pivot from the app and focus on solving GraphQL at the edge, creating FastQL, the first GraphQL CDN. As a side project, FastQL powered many production apps, but Zach knew that there was a bigger opportunity to expand beyond just caching. When we showed

                                    Announcing Stellate has acquired FastQL, the first GraphQL CDN
                                  • GraphQL API開発スピードを爆上げするAWS Amplify Mockingことはじめ - Qiita

                                    概要 AWS Amplify Advent Calendar 2019、19日目はAWS Amplifyの新機能MockingでGraphQL API開発スピードを爆上げする方法について書いていきます! Amplify Mockingとは 2019.08.07に発表されたAmplify CLIの新(というにはいささか時間が経ってしまった)機能です。$ amplify pushはAWS CloudFormationのスタックの参照と変更を行うため、それなりに時間がかかってしまいます。$ amplify mockコマンドを使用すると、$ amplify pushでクラウドリソースに変更反映する前に、変更後の動作確認をローカル環境で行うことが可能です。 現在Mockingが提供されているCategoryは、以下の3つです。 api(GraphQL): AWS AppSync + Amazon D

                                      GraphQL API開発スピードを爆上げするAWS Amplify Mockingことはじめ - Qiita
                                    • Announcing Nexus 1.0: Type-Safe, Code-First GraphQL APIs | Prisma

                                      December 14, 2020 Nexus 1.0: A Major Release for Type-Safe, Code-First GraphQL APIs Prisma is a core contributor to Nexus, a library for building code-first and type-safe GraphQL APIs. Nexus has just reached 1.0. In this post, we'll recap what Nexus is and the value it brings and what's new at 1.0. Nexus is a library originally authored by Tim Griesser that allows developers to build code-first an

                                        Announcing Nexus 1.0: Type-Safe, Code-First GraphQL APIs | Prisma
                                      • GraphQL API設計で気をつけること

                                        追記: 2019/01/08この記事よりも @vvakame さんによるGraphQL APIスキーマの設計ガイドがあるのでそちらを参照することがおすすめです。 https://vvakame.booth.pm/items/1576562 また、GraphQLの設計について相談できるSlackグループを開設しているので、わからないこと・相談したいことがあればぜひ参加してください Slackグループ"GraphQLを使っている人たちの集まり"への招待リンク また、すべてのGraphQL API設計のベストプラクティスはGitHub API v4に詰まっているので、困ったらGitHubのマネをするというスタンスでいるのがよいです。 https://developer.github.com/v4/ GraphQL で実装するときに気をつけることID は global で unique にするクラ

                                        • Jetpack ComposeとGraphQLによるServer Driven UI/jetpackcompose-grahpql-serverdrivernui

                                          関連資料 宣言的UIの状態管理とアーキテクチャSwiftUIとGraphQLによる実践 https://speakerdeck.com/sonatard/swiftui-graphql 宣言的UI https://speakerdeck.com/sonatard/xuan-yan-de-ui

                                            Jetpack ComposeとGraphQLによるServer Driven UI/jetpackcompose-grahpql-serverdrivernui
                                          • サーバサイドの進捗に依存しないための Next.js x GraphQL のフロントエンド開発の工夫 - Money Forward Developers Blog

                                            こんにちは! マネーフォワード クラウド横断本部のWebエンジニアの はるやま (@linnefromice) です。 現在クラウド横断本部では BtoB 向けサービスのリプレイスプロジェクトの開発を行っており、今回は とフロントエンド開発においてそのプロジェクトで悩んだ点とそれに対する工夫の紹介をさせていただきたいと思います!(Special Thanks かわかみさん(@thinceller)、一緒にアーキテクチャの実現とこのフローを考えてもらいました) プロジェクトの特徴 今回のプロジェクトはリプレイスのため、既存のサービスで実現している機能の再現/改善または新規機能の開発を行うのですが、 現行サービスのコアモデル/データをベースに扱う必要がある サービスの特徴として、他のクラウドサービスとの連携により実現したい機能が多い のような特徴があります。 これらの特徴により、 サーバサイド

                                              サーバサイドの進捗に依存しないための Next.js x GraphQL のフロントエンド開発の工夫 - Money Forward Developers Blog
                                            • GraphQL API設計で気をつけること - Qiita

                                              追記: 2019/01/08 この記事よりも @vvakame さんによるGraphQL APIスキーマの設計ガイドがあるのでそちらを参照することがおすすめです。 https://vvakame.booth.pm/items/1576562 また、GraphQLの設計について相談できるSlackグループを開設しているので、わからないこと・相談したいことがあればぜひ参加してください Slackグループ"GraphQLを使っている人たちの集まり"への招待リンク また、すべてのGraphQL API設計のベストプラクティスはGitHub API v4に詰まっているので、困ったらGitHubのマネをするというスタンスでいるのがよいです。 https://developer.github.com/v4/ GraphQL で実装するときに気をつけること ID は global で unique にする

                                                GraphQL API設計で気をつけること - Qiita
                                              • サービス間連携のためのGraphQL APIをClojureで開発している話 - Opt Technologies Magazine

                                                社内共有のマスタデータ基盤としてのGraphQL APIをプログラミング言語Clojureで開発している事例をご紹介します。 あいさつ 新規API開発の背景 現行システムの問題点: 共有データベース 解決策: データベースをラップするサービス 技術選定の経緯 API方式: GraphQL メイン開発言語: Clojure アプリケーションのアーキテクチャ設計 The Clean Architecture コードの全体像 resolver use case entity boundary 主な要素技術 アプリケーション構成の整理とライフサイクル管理: Duct GraphQL APIサーバ: Lacinia + Pedestal 入力バリデーション: malli DBアクセス: clojure.java.jdbc + Honey SQL テストとカバレッジ計測: clojure.test +

                                                  サービス間連携のためのGraphQL APIをClojureで開発している話 - Opt Technologies Magazine
                                                • GraphQLはなぜ開発体験が良いのか?モノづくり産業のDXに挑戦しているキャディに聞きました【技術選定の裏側:GraphQL編 vol.3】 | IT/Webエンジニアの転職・求人サイトFindy – GitHubからスキル偏差値を算出

                                                  ハイクラスエンジニア向け転職・求人サイト。自社開発のWeb企業の求人多数!GitHub登録をすると、IT/Web企業とマッチングします。ユーザーサクセス (キャリア)面談も実施。

                                                    GraphQLはなぜ開発体験が良いのか?モノづくり産業のDXに挑戦しているキャディに聞きました【技術選定の裏側:GraphQL編 vol.3】 | IT/Webエンジニアの転職・求人サイトFindy – GitHubからスキル偏差値を算出
                                                  • GitHub - vvakame/graphql-schema-guide: GraphQLスキーマのあれこれをいい感じにする本

                                                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                      GitHub - vvakame/graphql-schema-guide: GraphQLスキーマのあれこれをいい感じにする本
                                                    • Next.js + ApolloでSSRするときにパフォーマンスが低下する問題について

                                                      Next.js + Apollo Next.js の公式リポジトリには Apollo を使用する際のサンプルコードがあるが、 これらを参考に SSR するとかなりパフォーマンスが悪い。 with-apollo with-typescript-graphql 例えば、with-typescript-graphql の/pages/index.tsx を見てみる。 ... import { useViewerQuery, useUpdateNameMutation, ViewerDocument, } from '../lib/viewer.graphql' import { initializeApollo } from '../lib/apollo' const Index = () => { const { viewer } = useViewerQuery().data! ... re

                                                        Next.js + ApolloでSSRするときにパフォーマンスが低下する問題について
                                                      • mswとgraphql codegenでGraphQLをモックし、効果的で効率的なReactのテストを書く

                                                        はじめに:テスト戦略の話 そもそもフロントエンドのテストって何をどんな粒度で書けばいいの?という疑問はよくあると思います。これについては以前Qiitaの記事: フロントエンドでTDDを実践する(理論編)で書いているので詳細は省きますが、Testing Trophyの戦略に則り、integration testを中心とし、unitテストは本当に有効なものに絞って書くというのがフロントエンドにおいては有効です。 APIモック フロントエンドのintegration testにおいて課題になるのがAPIのモックです。urqlやapollo clientのようなGraphql Clientでもqueryをモックする仕組みはありますが、どちらもclient自体をモックするような書き方になります。一見問題ないようですが、client側でキャッシュの挙動を制御したりできることもあり、本番コードと異なるコ

                                                          mswとgraphql codegenでGraphQLをモックし、効果的で効率的なReactのテストを書く
                                                        • AirbnbにおけるGraphQLマイグレーション

                                                          原文(投稿日:2019/12/03)へのリンク Airbnbは、APIの大半をGraphQLに移行して、ページロード時間の短縮とより直感的なユーザエクスペリエンスを実現することに成功した。GraphQL Summitで行われたプレゼンテーションでは、Brie Bunge氏が、同社の多くのチームで使用されたマルチステージのマイグレーションプロセスについて説明した。 各ステージを成功させることによってAirbnbでは、100パーセント型安全でオーバーフェッチングのないApolloおよびGraphQLアプリを完成すると同時に、マイグレーション作業の各過程を通じてサイトの稼働と運用を維持することにも成功した。ApolloとGraphQLの適用によって、従来のRESTベースのアーキテクチャでは到底実現できなかったような、新たなパフォーマンス改善を実現するための基礎を作り上げたのだ。 マイグレーション

                                                            AirbnbにおけるGraphQLマイグレーション
                                                          • AppSync & GraphQL 入門 - Qiita

                                                            AppSync とは? GraphQL というAPI仕様を用いて「柔軟なAPI」を提供するAWSのマネジメントサービス ちなみに、従来の REST API 形式だと AWSは API Gateway を提供している GraphQL とは? Facebookが開発しているWeb APIのための規格 「クエリ言語」 と 「スキーマ言語」 からなる REST API は、1URLに対し1つのAPIや情報を提供できるのに対し、 GraphQL は欲しいデータを以下のようなクエリとして発行すると、欲しいデータを欲しいObject形式で得ることができます AppSyncの仕組み AppSyncは直接DynamoDBの値を取得・更新・削除することができます 従来のAPI Gatewayだと、AWS Lambda が間に必要でしたが、 AppSyncは Lambda レス でDynamoDBへのアクセスが

                                                              AppSync & GraphQL 入門 - Qiita
                                                            • GraphQLのスキーマ定義やクエリから型定義、自動生成できまっせ - Qiita

                                                              概要 2022年のフロントエンドに必要なスキルマップにもあるように、GraphQLという選択肢が一般化しています。 引用元 GraphQLを使用する場合、GraphQLの特性を知らなければなりませんが、今回の記事ではGraphQLとは何か。どう使うのかについては言及致しません。その場合は、こちらの記事を一読していただけますと幸いです。 今回は、GraphQLを使用する際にGraphQLのスキーマやクエリからTypeScriptの型定義を自動生成する方法について記事にしていきます。 GraphQLのスキーマやクエリからTypeScriptの型定義を自動生成するには 例えば、フロントエンド開発においてTypeScriptの導入をしている場合、GraphQLのスキーマごとの型定義を作成しなければなりません。 ただ、GraphQLのスキーマを確認しながら型を手動で作っていくのってしんどいですよね。

                                                                GraphQLのスキーマ定義やクエリから型定義、自動生成できまっせ - Qiita
                                                              • POSレジの長期プロダクト開発 - STORES Product Blog

                                                                STORES, STORES レジでバックエンドエンジニアをしている @charlie です。 先日 STORES から新しいプロダクト STORES レジ がリリースされました。 プロジェクト発足からリリースまで開発に実は1年9ヶ月かかっています。 全体像は @ide も公開しているので読んでみてください。 https://ideyuta.com/stores_regi ここではバックエンドエンジニア目線で約2年弱のプロジェクトを振り返りたいと思います。 POSレジという未知の世界 レジプロジェクトにアサインされたのは2019年10月頃。 社内にはオフラインやPOSレジの知見はほとんどなかったため、キャッチアップから始まりました。 例えば、複数の店舗やシフトといった概念はオフライン特有のものです。 オフラインでは何が必要なのかを調査し、STORES でどのように実現していくのかを検討して

                                                                  POSレジの長期プロダクト開発 - STORES Product Blog
                                                                • Demystifying Cache Normalization | Apollo GraphQL Blog

                                                                  Apollo Client has a particularly challenging responsibility: to make interconnected GraphQL data easy to use on the client-side. In most rich client applications, we need the ability to cache data and pass it to components. We also need to know when to re-fetch data vs. when to return what’s already cached; this helps to avoid making unnecessary network requests. This kind of caching logic can be

                                                                    Demystifying Cache Normalization | Apollo GraphQL Blog
                                                                  • GitHub - grantila/ts-to-openapi: Convert TypeScript types to OpenAPI schema components

                                                                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                      GitHub - grantila/ts-to-openapi: Convert TypeScript types to OpenAPI schema components
                                                                    • 【GraphQL】スキーマ駆動開発におけるバリデーションの取り決め設計パターン集

                                                                      ハコベル物流DXシステム開発部のおおいし (@bicstone) です。普段はフロントエンドエンジニアとしてハコベル配車計画の開発を行なっています。 前回の記事では、GraphQLをプロダクトに投入するにあたり検討したエラーレスポンス設計パターンについて紹介しました。 この記事では、フロントエンドとバックエンド間でのバリデーションスキーマの取り決めについて解説します。 GraphQLスキーマ設計で悩まれている方の参考になれば幸いです。 はじめに ハコベル配車計画では、バックエンドとフロントエンド間の通信においてGraphQLを活用しています。1年ほど運用していく中で、設計における課題がいくつか表面化してきました。 今回、社内ハッカソンイベントHackWeek 2023 [1] が開催され、ハコベル配車計画チームでは1年間の運用の中で感じた、GraphQLスキーマの設計における悩みを振り返る

                                                                        【GraphQL】スキーマ駆動開発におけるバリデーションの取り決め設計パターン集
                                                                      • GitHub - yusukebe/ramen-api: Web API about 🍜

                                                                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                          GitHub - yusukebe/ramen-api: Web API about 🍜
                                                                        • プロダクトのスケールを見据えてServer-Driven UIを採用してみる

                                                                          この記事はUbie Engineering Advent Calendar 2023の12日目の記事です。よろしくお願いします。 はじめに Ubieでソフトウェアエンジニアをやっているisseiです。 2021年の3月に入社してから2年程症状検索エンジン「ユビー」の開発をしていましたが、ここ1年くらい新規のプロダクトの検証とそのスケールのための開発をしています。 2023年の前半は、新規のプロダクトの検証を出来るだけ素早く行うため、実装範囲を小さくし、バックエンドの実装も最小限にとどめて、ほとんどの機能をフロントのコードで完結させていたのですが、後半は、前半に検証が終えられたプロダクトのスケールに向けた設計変更と実装の置き換えを行っています。 この記事では、後半で行った設計変更の中で採用した SDUI(Server-Driven UI) がとても良かったので、採用に至った経緯と、実装の概要

                                                                            プロダクトのスケールを見据えてServer-Driven UIを採用してみる
                                                                          • immer で簡単 Apollo Client キャッシュ更新 - CADDi Tech Blog

                                                                            こんにちは、CADDi でフロントエンドエンジニアをしている桐生です。 弊社では バックエンドとの通信に GraphQL を採用し、そのクライアントライブラリとして Apollo Client を使用しています。 今回は Apollo Client と immer を使った Tips を紹介したいと思います。 [toc] 前提 apollo-client@2.6.4 immer@5.3.4 先に結論 assumeImmutableResults: true を設定して、パフォーマンスアップを図ろう。 freezeResults: true を設定して、キャッシュの mutable change を禁止しよう。 キャッシュ更新は immer を使って簡潔に直感的に実装しよう。 Apollo Client のキャッシュとは Apollo Client の便利な仕組みの1つにキャッシュ機構 In

                                                                              immer で簡単 Apollo Client キャッシュ更新 - CADDi Tech Blog
                                                                            • NestJSのGraphQL Resolver関数を型安全にしたい

                                                                              ユビーではNestJSでGraphQLのサーバー実装をおこなっています。今回は実践で得られた知見を元にNestJSでGraphQLのResolverに対してGraphQLのスキーマから生成したTypeScriptの型を適用する方法について解説します。 前提としてNestJSにはスキーマファーストとコードファーストがありますが、今回はスキーマファーストで書いたうえで、スキーマから型を生成するアプローチを紹介します。 NestJS組み込みの型生成を使う NestJSのスキーマファーストのアプローチではNestJSの組み込みの機能でスキーマからTypeScriptの型を生成することができます。 以下のように書くことで、 graphql.ts に型が生成されます。 GraphQLModule.forRoot<ApolloDriverConfig>({ driver: ApolloDriver, t

                                                                                NestJSのGraphQL Resolver関数を型安全にしたい
                                                                              • [GraphQL]gqlgenを使ってアレがしたい - Qiita

                                                                                概要 gqlgenを使ってGraphQLサーバを実装している。 今は開発に慣れてきた部分があるが、gqlgenの導入時に調査が必要であったアレやるには?コレやるには?を少し書いてみる。 しかし、どれも大体公式ドキュメントに乗っている内容なので詳細はそちらを見るのがよい 公式doc GraphQL gqlgen エラーをフックしてアプリ固有の処理をしたい 例えばResolverからエラーを返す際に必ず以下のことを行いたいケースがあるとする Internalエラーはログ出力したい エラーに応じて決められたjsonフォーマットでエラーメッセージを返したい このようなニーズに応えるためにgqlgenのhandler.ServerにはSetErrorPresenterという関数でresolverが返したエラーをHookする仕組みがある。 GraphQLでのエラーメッセージはextensionsという

                                                                                  [GraphQL]gqlgenを使ってアレがしたい - Qiita
                                                                                • Apollo なら爆速で GraphQL サーバーと GraphQL クライアントアプリが作れる - Qiita

                                                                                  はじめに 最近気になっていた Apollo について、1 から調べてみました。Apollo 入門記事の位置付けを目指しています。 よって、本記事は以下のような読者を対象にしています。 Apollo って聞いたことはあるけど、何ができるのかよくわからない 気にはなってたけど、日本語の情報が少なくて調べる気になれない バックエンドのツールなのかフロントエンドのツールなのか、話はそれからだ 本記事の内容 Apollo の簡単な概要 Apollo を使って GraphQL サーバーを建ててみる Apollo を使って GraphQL サーバーを利用する React アプリを作ってみる Apollo の簡単な概要 公式ページはここです。 以下の画像が思想の全てを語っていると思います。 すべてが A(pollo)になる。 Apollo を利用することで、あらゆるデータが GraphQL サーバーとして

                                                                                    Apollo なら爆速で GraphQL サーバーと GraphQL クライアントアプリが作れる - Qiita