AOSSIE-Org / AOSSIE-Org/OrgExplorer

[FEATURE]: Improved GitHub API Fetching with IndexedDB Caching

オープン
#98 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
enhancement
主要言語
JavaScript
スター
34
フォーク
92
平均マージ
8日 7時間
マージ済み PR(30日)
12

説明

### Feature and its Use Cases

## What does it do??
This update adds a browser-side caching layer using IndexedDB for GitHub API responses. The cache stores organization, repository, contributor, issue, and rate-limit data for a limited time, reducing repeated API calls and improving app responsiveness.

The update also improves the GitHub fetch flow by handling rate-limit information, supporting optional Personal Access Tokens, and reusing cached responses when valid data is already available.

## What is the feaure
The feature is a client-side API caching and fetch optimization system for the Org Explorer app.

It includes:
- IndexedDB-based cache storage.
- One-hour cache expiration using TTL.
- Cached reads before making GitHub API requests.
- Automatic cache writes after successful API responses.
- GitHub rate-limit updates through a custom browser event.
- Support for authenticated requests using a Personal Access Token.
- Shared fetch logic through fetchWithCache.

## Benefit
Users benefit because the app becomes faster, more stable, and more efficient.

### Additional Context

_No response_

### Code of Conduct

- [x] I have joined the [Discord server](https://discord.gg/hjUhu33uAn) and will post updates there
- [x] I have searched existing issues to avoid duplicates

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

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

調査の方向性

The issue names no files, tests, or entry points. Start by locating the app’s GitHub API fetch flow and determine where organization, repository, contributor, issue, and rate-limit data are read and written; done means valid one-hour IndexedDB reuse, successful-response writes, rate-limit events, and optional token requests work.

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

評価

技術スタック
github, javascript
領域
api, database, frontend, performance
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
45/100

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

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