独立系スタジオ · ブラウザツール

ブラウザのための、小さなローカルファーストツールを作っています。

ほとんどの製品は同じ不満から始まります。本来ひと手間で済むはずのことが、四十手間かかる。いま公開しているのは Saver —— コンテンツをすべてご自身のディスクに残すメディアアーカイバです。プラットフォームごとに 1 つの拡張機能、ローカルコアは共通です。

役割
開発者
拠点
リモート
技術スタック
Chrome MV3、vanilla JS、Node
注力分野
ローカルファーストのツール

概要

ブラウザ拡張機能と、その周辺の小さなツールを作っています。何度も立ち返る原則はひとつ。機能にサーバーが必要なら、それなりの理由が要る。ほとんどの場合、理由はありません。

だからこそ、ここにある製品はすべてあなたの端末だけで動きます。アカウントもテレメトリーも登録も不要です。コードが想像より小さいのも、同じ理由です。

ツール

これらのプロジェクトのために書いた小さなユーティリティ。役に立ったので残しています。

sync-core

共有ライブラリを各アプリへコピーし、コピーが原本からずれたらビルドを失敗させます。

Node CLI

site-build

このサイトを生成します。1 組のテンプレートと言語ごとの 1 つの JSON から 10 言語を出力します。

Node CLI

license-keygen

Ed25519 のライセンスキーをオフラインで発行するので、有効化にサーバー呼び出しは不要です。

Node CLI

ノート

何が壊れ、何がうまくいき、次はどう変えるか。その記録です。

  • 拡張機能にバックエンドを持たせるべきでない理由 アカウント、クラウドストレージ、サーバー側のスロットリングは利便性と引き換えに、データリスクと運用負担を伴います。ローカルファーストが実際に手放すもの、そして取り戻すもの。
  • レート制限はエラー処理ではなく、製品上の判断である 無料枠、バッチサイズ、バックオフ。レート制限を、発生時に対処する例外ではなく、設計すべきプロダクトの一部として扱う。
  • 1 つのファイルを 10 言語で届ける 1 つのコピー、10 言語、100 ページ以上。依存ゼロのビルドで、ずれを防ぐ仕組み。

このプロジェクトを支援する

Saver は小さなチームで開発・保守しています。お役に立てていたら、以下のいずれかの方法で支援していただけると大変うれしいです。ありがとうございます。

お問い合わせ

不具合の報告、ライセンスに関する質問、こんなツールが欲しいという声。メールがいちばん早く届きます。

[email protected]