gadicc
(Gadi Cohen)
1
1年前にnpmで「discourse2」を公開しましたが、最近さらに多くの愛情を注ぎました。これは基本的に、DiscourseのOpenAPI仕様から生成されたDiscourse API用のTypeScript / JavaScript SDKです。これにより、非常に簡単に使用できます。


使い方は以下のようになります。
import Discourse from "discourse2";
const discourse = new Discourse("https://discourse.example.org/", {
"Api-Key": process.env.DISCOURSE_API_KEY,
"Api-Username": process.env.DISCOURSE_API_USERNAME,
});
const result = await discourse.listLatestTopics();
console.log(result);
CodeSandboxのライブデモもあります。
機能:
- Discourse APIのすべて(OpenAPI仕様で公開されているもの)。
- 常に最新:OpenAPI仕様は毎日変更がないかチェックされ、変更があった場合はパッケージが自動的に再構築および再公開されます。最新の取得日は、READMEの先頭にあるバッジに表示されます:

- サーバー環境とブラウザ*環境の両方で動作します(APIキーなしで公開データ、例えば最新トピックなどをクエリする場合に便利です)。
興味の度合いを測り、どれだけ多くの時間を費やすかを判断するために、GitHubでスターを付けていただけると幸いです。フィードバックも歓迎します。READMEのNotesセクションに記載されているように、いくつかの注意点があります。
「いいね!」 10
zueripat
(Patrick)
3
プロジェクトを気に入りました。本当にありがとうございます 
「いいね!」 1
gadicc
(Gadi Cohen)
4
皆さん、こんにちは。たくさんの「いいね」とサポートをありがとうございます。いくつかアップデートがあります。
テストカバレッジ 86%。主に実際の Discourse インスタンスでの E2E テストです。system ユーザーで動作するものはほぼすべて網羅したと思いますが、一部のメソッドについては他のユーザーでの実験が必要です。
その過程で多くのバグを修正しました。主に PUT リクエストとリダイレクトに関連するものです。
JSR に 100% の品質スコアで公開しました。すべてのバージョンは引き続き NPM にも共同で公開されています。
TSDocs を改善しました。利用可能な場合は summary だけでなく description も含めるようにしました。また、@module ドキュメントと @example も追加しました。
Deno v2 で開発しました。高速で便利な開発体験を実現しました。すべてのコミットで node で完全にテストされていますが、代替ランタイムにも対応しています!
NPM で週 425 回のダウンロード(ただし、おそらく主にボットとリリース頻度によるものだと思われます
)。
これでひとまず完了です。バリデーションの安全性(およびタイプ変換)についてはもう少し作業したいと考えていますが、すでに実際のプロジェクトで効果的に使用されています。バグや機能リクエストがあれば、ぜひ issue を開いてください。ハッピー・ディスコーシングを! 
「いいね!」 3