Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Ability to cache for offline usage

オープン
#43 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
typescript
領域
api

調査の方向性

まず src/hydra/parseHydraDocumentation.js を読み、特に 196-442 行でリンクされている parsing セクションを確認し、JSON.stringify() を使用している既存のテストをレビューしてください。取得と parsing の境界を定義し、そのうえで、参照を失うことなく API 仕様をオフライン利用向けに復元できることを検証してください。設計について合意することも完了条件の一部です。

索引モデルが issue の本文から書いたものです。

説明

Hacktoberfest

Hi,

I'd like to be able to initialize the API specs from an existing cache in order to get the most recently known state of the api docs in case of offline usage.

Basically I need to be able to serialize the specs into JSON and deserialize from JSON. As far as I can see the tests currently utilize JSON.stringify() already which is nice but in my case I'm getting issues with an API spec which has circular references internally (e.g. a Resource is referencing another Resource its Field.reference property).

As the parseHydraDocumentation is capable of creating those references properly based on the api docs I'm currently thinking that utilizing the collected response(s) for caching and instantiate a new instance of Api with its belongings from that state.

If I see it correctly it should be sufficient to separate the "fetch" and "parse" capabilities that are currently handled implicitly in the parseHydraDocumentation - like having one separately exported function that does only the parsing which is currently done here:

https://github.com/api-platform/api-doc-parser/blob/a9e097339ecd88b0515238c49e504ff17edcc1c3/src/hydra/parseHydraDocumentation.js#L196-L442

I could try to come up with a PR for this but I'd like to get some opinions on that first.

Best

主要言語
TypeScript
スター
113
フォーク
80
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

api-platform/api-doc-parser のほかの issue

api-platform/api-doc-parser の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。