Repolode
gepheum

gepheum/skir

1つの.sk irファイルから、TypeScript、Python、Java、Go、C++など向けの型安全なデータモデルとRPCコードを生成する宣言的スキーマ言語。

代替できる製品:Protocol Buffers

スター
316
フォーク
10
未解決の Issue
1
最終コミット
17 日前

これは何?

Skirは、1つの.sk irファイルでデータ型とAPIを定義するためのスキーマ言語です。コマンドラインジェネレーターが定義をTypeScript、Python、Java、Go、C++、Rust、Kotlin、Swiftなど複数の言語のネイティブコードに変換するため、クライアントとサーバーで同じ契約を共有できます。

生成される型は深く不変で、構築時にすべてのフィールドを指定する必要があります。定数または型付きのバリアントを持つsum型、検索APIを備えたキーインデックス付き配列、そしてdense JSON、読みやすいJSON、バイナリの3つのシリアライズ方式をサポートします。また、定義が変わっても古いデータをデシリアライズできるよう、スキーマ進化の互換性チェックも備えています。

サービス向けには、メソッドの閲覧やテストに使えるStudioアプリを内蔵した軽量なHTTP RPCレイヤー、SkirRPCを提供します。GitHubリポジトリから型を直接インポートすることもでき、言語サーバーを備えたVS Code拡張機能により、検証、補完、フォーマットを利用できます。

主な機能

  • 011つのスキーマファイルから10以上の言語向けに型安全なコードを生成します。
  • 02構築時にすべてのフィールドを指定する、深く不変な型を生成します。
  • 03定数または型付きのバリアントを持つsum型をサポートします。
  • 04dense JSON、読みやすいJSON、バイナリのシリアライズ方式を利用できます。
  • 05メソッドのテストに使えるStudioを内蔵したHTTP RPCレイヤー、SkirRPCを備えています。
  • 06GitHubリポジトリから型をインポートできます。

ユースケース

  • TypeScriptのフロントエンドとPythonまたはGoのバックエンドで、リクエスト型とレスポンス型を共有する。
  • sum型とキーインデックス付き配列を備えたスキーマ言語で、Protocol Buffersの定義を置き換える。
  • HTTP RPCレイヤーと閲覧可能なテストUIを必要とする、型付きAPIを定義する。
  • GitHubからのインポートを通じて、複数のプロジェクト間でデータ構造を共有する。

クイックスタート

  1. 1

    セットアップとワークフローについては、スタートガイドを開いてください

  2. 2

    .skir スキーマファイルを作成し、対象言語向けのコードを生成してください

使う前に知っておきたいこと

  • Elixir ジェネレーターは公式ではなく、コミュニティによってメンテナンスされています。

トピック

よくある質問

skir とは?
1つの.sk irファイルから、TypeScript、Python、Java、Go、C++など向けの型安全なデータモデルとRPCコードを生成する宣言的スキーマ言語。 Skirは、1つの.sk irファイルでデータ型とAPIを定義するためのスキーマ言語です。コマンドラインジェネレーターが定義をTypeScript、Python、Java、Go、C++、Rust、Kotlin、Swiftなど複数の言語のネイティブコードに変換するため、クライアントとサーバーで同じ契約を共有できます。
skir は無料で使えますか?ライセンスは?
skir は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
skir は今もメンテナンスされていますか?
活発にメンテナンス中。skir の最終コミットは 2026年10月6日 です。
skir は何に使えますか?
TypeScriptのフロントエンドとPythonまたはGoのバックエンドで、リクエスト型とレスポンス型を共有する。 sum型とキーインデックス付き配列を備えたスキーマ言語で、Protocol Buffersの定義を置き換える。 HTTP RPCレイヤーと閲覧可能なテストUIを必要とする、型付きAPIを定義する。 GitHubからのインポートを通じて、複数のプロジェクト間でデータ構造を共有する。
skir のインストール方法は?
セットアップとワークフローについては、スタートガイドを開いてください .skir スキーマファイルを作成し、対象言語向けのコードを生成してください
skir はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/gepheum/skir

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト