BoxPistols / BoxPistols/BoostRecord

[Web版 Phase B] OPFS フォールバックと zip の入出力

Open
#178 0 comments 0 reactions 0 assignees View on GitHub
priority: medium type: feature
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.