BoxPistols / BoxPistols/BoostRecord
[Web版 Phase B] OPFS フォールバックと zip の入出力
- Dominant language
- JavaScript
- Stars
- 1
- Forks
- 0
- Avg merge
- 11m
- Merged PRs (30d)
- 19
Description
File System Access APIが無いブラウザ(Safari / Firefox)向けの受け皿です。#154 の Phase B。
現状、対応していないブラウザでは見本データが出るだけで、自分のノートは扱えません。
## やること
- [ ] OPFS(Origin Private File System)に読み書きする `NotesRepository` の実装
- `navigator.storage.getDirectory()` はSafari / Firefoxでも使える
- ただしブラウザの中に閉じたフォルダなので、ローカルのファイルとは繋がらない
- [ ] zipの取り込みと書き出し
- 取り込み: ストレージフォルダをzipで固めたものを受け取り、OPFSへ展開する
- 書き出し: OPFSの中身をzipにして保存する
- この2つが無いと、OPFSに入れたノートを外へ出せない
- [ ] zipのライブラリを選ぶ。バンドルサイズを測ってから決める(現状 400.65 kB gzip)
## 判断が要ること
OPFSは「ブラウザの中の隔離された保存領域」で、利用者から見えるファイルではありません。デスクトップ版と同じフォルダを共有することもできません。同期の口を持たない設計(#154)と噛み合うかは、作る前に整理しておきたいところです。
Refs #154
Contributor guide
Research direction
Start by reading the referenced Phase B design in #154 and tracing the existing NotesRepository boundary for the web version. Measure the current 400.65 kB gzip bundle before evaluating zip libraries; done means a decided OPFS storage approach, working zip import and export, and agreement that it fits the no-sync design.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100