misskey-dev / misskey-hub-next

Website for Misskey since Dec 2023. Built on Nuxt. I18n is available on Crowdin.

Home Page:https://misskey-hub.net/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

API(エンドポイント)ドキュメント

kakkokari-gtyih opened this issue · comments

一応api.jsonからドキュメント生成できるようにするやつを作成中(api-doc-genブランチ)だが、HQのほうで作業をやってるのでそれを待ったほうがいい気がしている

ただHQの作業があまり進んでないのならこっちで入力用のフォーマットをある程度用意してしまうのも手(Notionからのエクスポートに比べて、今後の反映がやりやすくなる)

(どっちにしろ私のリソース的にしばらく手を付けられなさそう)

ただHQの作業があまり進んでないのならこっちで入力用のフォーマットをある程度用意してしまうのも手(Notionからのエクスポートに比べて、今後の反映がやりやすくなる)

各リクエスト・レスポンスのKeyにそれぞれ1文付けられるようなJSONを出力できるように作業中

{
    "data": {
        "post": {
            "description": "(説明がありません)",
            "requestBody": {
                "userId": "(説明がありません)"
            },
            "response": null
        }
    },
    "title": "users/achievements"
}

(あとはHQにいい感じの編集ツールか何か用意してもらいたい気分(←ただ疲れて用意する気力がないだけ))

とりあえずJSONができた

ここにおいてあります

せつめい

エンドポイントごとにファイルが分かれている。中身はこんな感じ

{
    "data": {
        "post": {
            "description": "(説明がありません)",
            "requestBody": {
                "visibility": "(説明がありません)",
                "visibleUserIds": "(説明がありません)",
                "cw": "(説明がありません)",
                "localOnly": "(説明がありません)",
                "reactionAcceptance": "(説明がありません)",
                "noExtractMentions": "(説明がありません)",
                "noExtractHashtags": "(説明がありません)",
                "noExtractEmojis": "(説明がありません)",
                "replyId": "(説明がありません)",
                "renoteId": "(説明がありません)",
                "channelId": "(説明がありません)",
                "text": "(説明がありません)",
                "fileIds": "(説明がありません)",
                "mediaIds": "(説明がありません)",
                "poll": "(説明がありません)"
            },
            "response": {
                "createdNote": "(説明がありません)"
            }
        }
    },
    "title": "notes/create",
    "description": "(説明がありません)"
}

data.post 以下とdescriptionの「説明がありません」を全部埋めていってもらえると、各キーの説明欄が完成するしくみ(title変更しないこと

当面はエンドポイントドキュメントのi18nは見送って、HQのJSONファイル記載が終わってからCrowdinに回すのがベストかと思った

APIスキーマを表示するコンポーネントを作る必要があるけど難解すぎるのできつい(一応、$refで参照されてるスキーマをDynamic Importするための準備工事までは終わっている)

(あとはHQにいい感じの編集ツールか何か用意してもらいたい気分(←ただ疲れて用意する気力がないだけ))

ファイルベースCMSのKeystaticを導入するのが良いかもしれない(Nuxtへのインテグレーションがまだできてないので待つ必要がある)

https://github.com/thinkmill/keystatic

別ポートでCMSを立ち上げるのが良いっぽい Thinkmill/keystatic#800 Thinkmill/keystatic#809

HQの進捗がわからん