{"id":36859814,"url":"https://github.com/ekkx/yaylib","last_synced_at":"2026-07-04T07:00:44.316Z","repository":{"id":153224670,"uuid":"625138180","full_name":"ekkx/yaylib","owner":"ekkx","description":"nanameue, Inc. Yay! (イェイ) - API ライブラリ 🛠️","archived":false,"fork":false,"pushed_at":"2026-05-17T08:04:00.000Z","size":5704,"stargazers_count":145,"open_issues_count":0,"forks_count":14,"subscribers_count":3,"default_branch":"master","last_synced_at":"2026-05-17T08:31:19.943Z","etag":null,"topics":["api","automation","bot","client","framework","library","nanameue","python","sdk","wrapper","yay"],"latest_commit_sha":null,"homepage":"https://ekkx.github.io/yaylib","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ekkx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-04-08T07:17:25.000Z","updated_at":"2026-04-30T14:54:17.000Z","dependencies_parsed_at":"2023-09-07T00:31:44.184Z","dependency_job_id":"c476be26-ef02-475e-9aec-ea0379edd727","html_url":"https://github.com/ekkx/yaylib","commit_stats":null,"previous_names":["qaov/yaybot","qvco/yaybot","4kkx/yaylib","ekkx/yaylib","qvco/yaylib"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/ekkx/yaylib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekkx%2Fyaylib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekkx%2Fyaylib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekkx%2Fyaylib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekkx%2Fyaylib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ekkx","download_url":"https://codeload.github.com/ekkx/yaylib/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekkx%2Fyaylib/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35112708,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-04T02:00:05.987Z","response_time":113,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","automation","bot","client","framework","library","nanameue","python","sdk","wrapper","yay"],"created_at":"2026-01-12T14:49:09.641Z","updated_at":"2026-07-04T07:00:44.310Z","avatar_url":"https://github.com/ekkx.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"https://github.com/ekkx/yaylib/assets/77382767/45c45b21-d812-4cad-8f27-315ffef53201\" alt=\"yaylib\" height=\"160px\"\u003e\n\n### yaylib\n\n**好きでつながるバーチャルワールド - Yay! の API ライブラリ**\n\n\u003ca href=\"https://github.com/ekkx/yaylib\"\u003e\u003cimg src=\"https://img.shields.io/badge/Go-00ADD8?style=flat-square\u0026logo=go\u0026logoColor=white\" alt=\"Go\"\u003e\u003c/a\u003e\u0026nbsp;\n\u003ca href=\"https://github.com/ekkx/yaylib/tree/master/packages/typescript\"\u003e\u003cimg src=\"https://img.shields.io/badge/TypeScript-3178C6?style=flat-square\u0026logo=typescript\u0026logoColor=white\" alt=\"TypeScript\"\u003e\u003c/a\u003e\u0026nbsp;\n\u003ca href=\"https://github.com/ekkx/yaylib/tree/master/packages/python\"\u003e\u003cimg src=\"https://img.shields.io/badge/Python-3776AB?style=flat-square\u0026logo=python\u0026logoColor=white\" alt=\"Python\"\u003e\u003c/a\u003e\u0026nbsp;\n\u003ca href=\"https://github.com/ekkx/yaylib/tree/master/packages/rust\"\u003e\u003cimg src=\"https://img.shields.io/badge/Rust-000000?style=flat-square\u0026logo=rust\u0026logoColor=white\" alt=\"Rust\"\u003e\u003c/a\u003e\n\n\u003csub\u003eあらゆる操作の自動化や、ボットの開発が可能です。\u003c/sub\u003e\n\n\u003ca href=\"https://discord.gg/MEuBfNtqRN\"\u003eDiscord に参加\u003c/a\u003e\n\n\u003c/div\u003e\n\nYay! の API を [Go](https://github.com/ekkx/yaylib) / [TypeScript](https://github.com/ekkx/yaylib/tree/master/packages/typescript) / [Python](https://github.com/ekkx/yaylib/tree/master/packages/python) / [Rust](https://github.com/ekkx/yaylib/tree/master/packages/rust) から扱うための非公式 SDK です。\n\n### インストール\n\n```sh\ngo get github.com/ekkx/yaylib/v2   # Go\nnpm install yaylib                 # TypeScript\npip install yaylib                 # Python\ncargo add yaylib                   # Rust\n```\n\n### クイックスタート (Go)\n\n```go\npackage main\n\nimport (\n\t\"context\"\n\n\t\"github.com/ekkx/yaylib/v2\"\n)\n\nfunc main() {\n\tctx := context.Background()\n\tclient := yaylib.NewClient()\n\n\t// ログイン（セッションは透過的にキャッシュされます）\n\tclient.LoginWithEmail(ctx).Email(\"...\").Password(\"...\").Execute()\n\n\t// タイムラインを取得\n\ttl, _, _ := client.GetTimeline(ctx, yaylib.NoreplyModeFalse).Number(20).Execute()\n\t_ = tl\n\n\t// 投稿する\n\tclient.CreatePost(ctx).\n\t\tXJwt(client.GenerateXJwt()).\n\t\tPostType(\"text\").\n\t\tText(\"hello from yaylib\").\n\t\tExecute()\n}\n```\n\nすべてのオペレーションは `client.\u003cOperation\u003e` として直接呼び出せます。\n\n### イベントストリーム\n\n```go\nstream, _ := client.OpenEventStream(ctx)\nsub, _ := stream.Subscribe(ctx, yaylib.ChatRoomChannel())\n\nfor ev := range sub.Events() {\n\tswitch e := ev.(type) {\n\tcase *yaylib.NewMessageEvent:\n\t\t// 新着メッセージを受信\n\t\tfmt.Println(\"new message:\", e)\n\t}\n}\n```\n\n### サンプル\n\n実行できるサンプルを [`examples/`](https://github.com/ekkx/yaylib/tree/master/examples/go) に用意しています（全言語共通）。\n\n- 認証 + タイムライン取得\n- テキスト投稿\n- イベントストリームの簡単なボット\n- セッション永続化とエラー処理\n\n```bash\nYAY_EMAIL=... YAY_PASSWORD=... go run ./examples/go/timeline\n```\n\n### ⚖️ ライセンス\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/ekkx\"\u003e\n    \u003cimg src=\"https://github.com/ekkx/yaylib/assets/77382767/5d6aef18-5d98-4c9b-9f54-791308b393af\" width=\"256\" height=\"256\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eMIT © \u003ca href=\"https://github.com/ekkx\"\u003eekkx\u003c/a\u003e\u003c/strong\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fekkx%2Fyaylib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fekkx%2Fyaylib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fekkx%2Fyaylib/lists"}