ezcsv
ブラウザ内で動く CSV エディタ
ezcsv は、ブラウザだけで動く無料の CSV・TSV 編集ツールです。CSV のデータをサーバーに送信せず、編集・変換・エクスポートできます。
概要
最大5万行の表を、仮想スクロールで編集できます。セル編集、行・列の追加・削除・クリア、列のドラッグ並び替え、Undo/Redo、列を指定した検索・フィルタ、ソート、1行目をヘッダーとして扱う切り替えに対応しています。
文字コード(UTF-8・Shift_JIS)、区切り文字(カンマ・タブ)、改行コード(CRLF・LF)は読み込み時に自動判別し、出力時に変更できます。CSV・TSV・PDF の保存と、行データからの QR コード生成(最大1,000件、ZIP で一括保存)ができます。
読み込んだデータは、サーバーに送信せず、LocalStorage などにも保存しません。外部通信を使うのは、同意した場合のアクセス解析と、お問い合わせの送信だけです。制限として、PDF は500行・10,000セルまでで、Excel ブック(.xlsx)は読み込めないため CSV に書き出してから使います。
アーキテクチャ
- 構成
- Next.js・React・TypeScript の Web アプリです。表は @tanstack/react-virtual による仮想スクロールで、画面内の行だけを描画します。
- 仕組み
- 読み込み時に、文字コード・改行コード・区切り文字・囲み文字を自動判別します。Shift_JIS の変換には iconv-lite を使い、PDF は html2pdf.js、QR コードは qrcode と JSZip で出力します。
- プライバシー
- CSV の処理はブラウザ内で完結します。保存するのはアクセス解析への同意状態だけで、フッターから変更できます。
- 制約
- 行数は最大5万行で、実際の操作感は端末の性能に依存します。PDF は500行・10,000セルまで、QR コードは検索結果が対象で、検索0件のときは出力しません。入力は .csv・.tsv・.txt です。
- 開発の方法
- Biome(Lint・整形)、Vitest(テスト)、Husky と lint-staged(コミット前のチェック)を使っています。ロゴ・favicon・OGP 画像は、元の SVG から生成するスクリプトで再生成します。
- 種別
- ブラウザ内で動く CSV エディタ
- 区分
- LAB(個人制作・実験)
- 状態
- 公開中
- URL
- ezcsv.com ↗
- 担当
- 企画・設計・開発
- 技術
- Next.js
- React
- TypeScript
- Tailwind CSS
- TanStack Virtual
- iconv-lite
- Vitest
- Biome