apollo-kotlin

โดย apollographql

Apollo Kotlin เป็นไคลเอนต์ GraphQL ที่มีการกำหนดชนิดข้อมูลอย่างเข้มงวด ซึ่งสร้างโมเดล Kotlin จากการดำเนินการและสคีมา GraphQL ของคุณ สามารถใช้ในโปรเจกต์ Android, JVM และ Kotlin Multiplatform ได้

npx skills add https://github.com/apollographql/skills --skill apollo-kotlin

Apollo Kotlin Guide

Apollo Kotlin is a strongly typed GraphQL client that generates Kotlin models from your GraphQL operations and schema, that can be used in Android, JVM, and Kotlin Multiplatform projects.

Process

Follow this process when adding or working with Apollo Kotlin:

  • Confirm target platforms (Android, JVM, KMP), GraphQL endpoint(s), and how schemas are sourced.
  • Configure Gradle and code generation, including custom scalars
  • Create a shared ApolloClient with auth, logging, and caching.
  • Implement operations.
  • Validate behavior with tests and error handling.

Reference Files

  • Setup - Gradle plugin, schema download, codegen config (including scalars), client configuration (auth, logging, interceptors)
  • Operations - Queries, mutations, subscriptions, and how to execute them
  • Caching - Setup and use the normalized cache
  • Migration Guide - Migrate from Apollo Kotlin 4

Scripts

Key Rules

  • Prefer Apollo Kotlin v5+. Do not use v3 or older versions.
  • Keep schema and operations in source control to make builds reproducible.

Skills เพิ่มเติมจาก apollographql

apollo-federation
apollographql
Apollo Federation ช่วยให้สามารถรวม GraphQL API หลายตัว (ซับกราฟ) เข้าด้วยกันเป็นซูเปอร์กราฟแบบรวมศูนย์
apollo-ios
apollographql
Apollo iOS เป็น GraphQL ไคลเอนต์แบบ strongly-typed สำหรับแพลตฟอร์ม Apple โดยสร้างประเภท Swift จากการดำเนินการและสคีมา GraphQL ของคุณ และมาพร้อมกับไคลเอนต์แบบ async/await, แคชแบบ normalized (ในหน่วยความจำหรือ backed โดย SQLite), การขนส่ง HTTP แบบ interceptor-based ที่เสียบได้ซึ่งจัดการ queries, mutations, และ multipart subscriptions, และการขนส่ง WebSocket แบบเลือกได้ (graphql-transport-ws) ที่สามารถรองรับการดำเนินการทุกประเภท
apollo-router
apollographql
Apollo Router เป็นกราฟเราเตอร์ประสิทธิภาพสูงที่เขียนด้วยภาษา Rust สำหรับรันซูเปอร์กราฟของ Apollo Federation 2 โดยจะอยู่ด้านหน้าซับกราฟของคุณและจัดการการวางแผนคิวรี การดำเนินการ และการประกอบคำตอบ
apollo-router-plugin-creator
apollographql
สร้างปลั๊กอิน Rust ดั้งเดิมสำหรับ Apollo Router
apollo-server
apollographql
คู่มือฉบับสมบูรณ์สำหรับการสร้างเซิร์ฟเวอร์ GraphQL ด้วย Apollo Server 5.x ในทุกเฟรมเวิร์ก ครอบคลุมการกำหนดสคีมา ตัวแก้ไข การตั้งค่าคอนเทกซ์ และการจัดการข้อผิดพลาดพร้อมรองรับ TypeScript รองรับโหมดสแตนด์อโลนสำหรับการสร้างต้นแบบ และการผสานรวมกับ Express, Fastify, Koa และสภาพแวดล้อมแบบไร้เซิร์ฟเวอร์ รวมถึงรูปแบบตัวแก้ไข การรับรองความถูกต้อง/การอนุญาต ปลั๊กอิน DataLoader สำหรับป้องกันปัญหา N+1 และเทคนิคการปรับปรุงประสิทธิภาพ ให้เอกสารอ้างอิงสำหรับแหล่งข้อมูล ข้อผิดพลาด...
graphql-operations
apollographql
คู่มือแนวทางปฏิบัติที่ดีที่สุดสำหรับการเขียน GraphQL operations ที่มีประสิทธิภาพและปลอดภัยต่อชนิดข้อมูล พร้อมการจัดระเบียบด้วย fragments ครอบคลุม queries, mutations, subscriptions และ fragments พร้อมหลักการตั้งชื่อ ไวยากรณ์ตัวแปร และการใช้ directives เน้นหลักการสำคัญ: ขอเฉพาะฟิลด์ที่จำเป็น ตั้งชื่อ operations ทั้งหมด ใช้ตัวแปรแทนค่าคงที่ และรวมฟิลด์ id เพื่อให้แคชได้ แนะนำให้วาง fragments ไว้ร่วมกับ components และใช้ directives @include / @skip สำหรับฟิลด์แบบมีเงื่อนไข...
graphql-schema
apollographql
คู่มือแนวปฏิบัติที่ดีที่สุดในอุตสาหกรรมสำหรับการออกแบบ GraphQL schemas ที่ใช้งานง่าย มีประสิทธิภาพสูง และบำรุงรักษาได้ ครอบคลุมหลักการออกแบบหลัก เช่น การจัดระเบียบประเภทที่เน้นผู้ใช้เป็นศูนย์กลาง รูปแบบการกำหนดค่า nullability ที่ชัดเจน และกลยุทธ์การพัฒนาที่เข้ากันได้ย้อนหลัง มีเอกสารอ้างอิงเกี่ยวกับประเภท หลักการตั้งชื่อ การแบ่งหน้าแบบ cursor-based การสร้างแบบจำลองข้อผิดพลาด และข้อควรพิจารณาด้านความปลอดภัย รวมถึงรูปแบบที่ใช้งานได้จริงสำหรับ interfaces, unions, input types, mutations และกลยุทธ์ ID พร้อมตัวอย่างโค้ด...
rover
apollographql
Apollo Rover CLI สำหรับจัดการ GraphQL schemas, federation และการพัฒนา supergraph ในเครื่อง เผยแพร่ ดึงข้อมูล และตรวจสอบความถูกต้องของ subgraph schemas; ประกอบ supergraph แบบ federated ในเครื่องหรือผ่าน GraphOS รวมถึงการตรวจสอบ schema (การตรวจสอบก่อน deploy), การ linting และการ introspection จากเซิร์ฟเวอร์ที่กำลังทำงาน คำสั่ง rover dev เริ่ม Router ในเครื่องพร้อมการประกอบ schema อัตโนมัติสำหรับขั้นตอนการพัฒนา รองรับรูปแบบ CI/CD ด้วยการตรวจสอบก่อนเผยแพร่และเอาต์พุต JSON สำหรับการเขียนสคริปต์ ต้องมี...