本文へスキップ
オープンソース · MIT · Deno 2 + Postgres

SaaSの土台は、もうできています。

Seedは、無料でMITライセンスのSaaSスターターです。ログインと2段階認証(2FA)、ロール付きグループ、メンバー単位のStripe課金、リアルタイム更新、オフラインアプリ、管理画面がそろっています。Docker Composeで、借りたLinuxサーバー1台にデプロイできます。

登録は不要です。サンプルデータ入りのゲストアカウントで使えて、データは毎晩リセットされます。 Seedは今すぐ使えて、公開しながら開発中です。現在の対応状況を見る。

$ gh repo create my-product --template spy4x/seed --private --clone$ cd my-product$ deno task init$ deno task dev
initが、すべてのシークレットを埋めたinfra/envs/.envを書き出します。AIエージェントに頼むこともできます:Create my new product "Acme" from https://github.com/spy4x/seed and run it locally。
SeedのWebアプリのメモ画面。グループのメモ一覧の上に、検索ボックス、タグと作成者のフィルター、「自分が作成」フィルター、並べ替えメニューがあります。各メモには作成者、タグ、更新日時、作成日時が表示され、「新しいメモ」ボタンがあります。
アプリとライブラリのテストファイル数。すべてCIで実行
324
ライセンス:アカウント不要、ペイウォールなし
MIT

含まれるもの

最初の機能を作る前に必要なものを、すべて

以下の各機能はすでに動作し、CIでテストされています。GoogleとGitHubでのログイン、Stripe課金には自分のキーが必要なため、デモではオフになっています。

ログインは完成済み

確認コード付きのメールアドレスとパスワード、パスワード再設定、GoogleとGitHubでのログイン、パスキー、メールで届くログインリンク、ゲストアカウント、認証アプリによる2段階認証。セッションは一覧で確認でき、終了もできます。

ログインのしくみ
プロフィールのセキュリティページ。パスワード、「パスキーを追加」ボタン、オンになった2段階認証、ログイン中のデバイス一覧の上部が見えます。

メンバー単位の課金

グループごとのStripeサブスクリプション。制限付きの無料プラン、メンバー単位の有料プラン、無料トライアル、カード決済が失敗したときの猶予期間。オーナーは招待のたびに料金を確認します。

課金のしくみ
デモアプリのサンプルグループのプラン(デモ用の価格例)。更新日の入ったProプランで、月額€36.00、オーナーを含む4人のメンバー×各€9.00。

リアルタイムとオフライン

変更はWebSocketで、開いているすべてのタブに届きます。アプリはインストールでき、ネットワークなしでも開け、書き込みをキューにためます。誰かの作業を上書きする代わりに、競合として表示します。

リアルタイムとオフラインのしくみ
Seedアプリのメモエディターでタイトルを変更しているところ。保存すると、開いているほかのウィンドウすべてに新しいタイトルが表示されます。

最初からグループ対応

すべてのアカウントに、登録時にグループが1つ作られます。メンバーを招待し、閲覧者からオーナーまでのロールを割り当て、オーナー権限を譲渡でき、削除したグループも30日以内なら復元できます。各グループには主要な数値をまとめた概要画面があります。

グループのしくみ
グループのメンバー一覧。各メンバーのロール、招待ボタンがあり、1人のメンバーのメニュー(「閲覧者にする」「管理者にする」「グループから外す」)が開いています。

管理画面

オペレーターはユーザーを検索し、グループを管理し、返金し、システムの状態を確認できます。管理画面は専用のホストで動き、リスクのある操作は事前に確認を求め、すべての操作が記録されます。

管理画面のツアーを見る

公開用Webサイト

このサイトのことです。サーバーでレンダリングされ、JavaScriptがオフでも動き、9言語に対応。プランカタログから作られる料金ページ、法務ページ、ダブルオプトインのニュースレターも備えています。

Webサイトに含まれるもの
すべての機能(スクリーンショットと対応状況付き)

借りたサーバー1台で動く

サーバー1台、docker composeひとつ。想定外の請求なし。

Seedは、借りたLinuxサーバーならどこでも動きます。ComposeがAPI、ワーカー、Webアプリ、Postgres、Valkey、そして証明書を自動で取得するTraefikを起動します。メトリクスとログはVictoriaMetricsとVictoriaLogsに送られ、Grafanaで見られます。バックアップ用のコンテナが毎日データベースの暗号化コピーを保存します。複数のプロダクトで1台のサーバーを共有することもできます。リクエストごとの課金はないので、アクセスが急増しても追加費用はかかりません。

サーバーレス関数やVercelを使いたいなら、Seedは向いていません。自分で管理するサーバー向けに作られています。

WebアプリPreactWebサイトFreshAPIDeno上のHonoPostgresすべての変更ワーカー時間のかかる処理メール、プッシュとクリーンアップすべて1台のサーバー上で、Traefikの背後にValkeyとGrafanaとともに稼働

クイックスタート

4つのコマンドでローカル起動

必要なのはDeno 2とDockerです。GitHub CLIは任意です。

initがenvファイルをコピーし、すべてのシークレットとWebプッシュ用の鍵を生成します。devでTraefikをはじめすべてが起動します。あとはhttp://app.localhostを開くだけです。すべての設定項目とデプロイ方法はREADMEにまとめています。

AIエージェントに頼むこともできます:Create my new product "Acme" from https://github.com/spy4x/seed and run it locally。

$ gh repo create my-product --template spy4x/seed --private --clone$ cd my-product$ deno task init$ deno task dev

正直な現状

今どこまでできているか

Seedは今すぐ使えて、公開しながら開発中です。何が動いていて、何がまだなのかを正確にお伝えします。

現在使えるもの

準備完了
  • 新規登録、ログイン、メールアドレス確認、パスワード再設定、GoogleとGitHubでのログイン、パスキー、マジックリンク、認証アプリによる2段階認証
  • ゲストアカウント:ワンクリックでアプリを試せて、ログイン方法を追加すればアカウントをそのまま使い続けられます
  • メンバー、ロール、招待、オーナー権限の譲渡に対応したグループ
  • グループのファイルへのエクスポートと、新しいグループとしてのインポート
  • メモへの画像やPDFの添付(各プランの容量内)
  • Stripeによるメンバー単位の課金と無料トライアル
  • プロフィール写真、ログイン中のデバイス一覧、自分のデータのダウンロード、7日間取り消せるアカウント削除
  • 個人用APIトークン
  • リアルタイム更新、オフラインアプリ、Webプッシュ
  • Telegramボット:チャットへの通知と、1ファイルで書ける独自コマンド
  • 管理画面
  • アウトボックスワーカー、ニュースレター、このWebサイト
  • アプリ、管理画面、このWebサイトが9言語に対応:英語、ロシア語、スペイン語、ドイツ語、ポルトガル語 (ブラジル)、アラビア語、フランス語、日本語、簡体中国語

まだないもの

進行中
  • Playストアで配信するAndroidアプリ
  • Windows、macOS、Linux向けのデスクトップアプリ
GitHubで進捗を追う

開発者でなくても大丈夫。Seedであなたのプロダクトを作ります。

Seedを作っているAntonです。創業者の方から依頼を受け、アイデアを、人が登録して支払いもできる本番のプロダクトに仕上げています。登録、グループ、決済はすでにそろっているので、予算はあなたのプロダクトならではの部分に使えます。

進め方と費用を見る (antonshubin.comが開きます)

Seedを作っている人

実際の受託開発のために、エンジニア1人が作っています

Anton Shubinです。シニアフルスタックエンジニア兼テックリードとして、2013年からフリーランスで活動しています。Seedは、クライアントのために何度も作り直してきた土台を1つのリポジトリにまとめたものです。有償のMVP開発で実際に使っているので、壊れればすぐに直します。あなたのプロダクトに足りないものがあれば、issueを立てるか、私に連絡してください。

Seedの最新情報を短いメールで受け取る

リリースした機能、壊れたもの、開発で学んだこと。それ以外のメールは送らず、購読解除もワンクリックです。

最初にメールで確認していただきます。

よくある質問

始める前に

アカウントなしで試せますか?

はい。「ライブデモを試す」を押すと、サンプルデータ入りのゲストアカウントでアプリが開きます。メールアドレスもパスワードも不要です。ログイン方法を追加することもできますが、デモのデータは毎晩リセットされます。Seed自体にはアカウントが一切不要で、GitHubからクローンするだけです。

Seedは本当に無料ですか?

はい。MITライセンスなので、商用・非商用を問わずいくつのプロダクトにも使えますし、フォークの公開も自由で、アカウントも不要です。かかる費用は、借りるサーバー1台分と、Stripeやメール配信サービスなど自分で有効にしたサービスの料金だけです。

なぜNext.jsではなくDenoとPreactなのですか?

Web標準(fetch、Request、Web Crypto、ESモジュール)の上で動き、起動が速く、依存関係も少ないため、更新するものも壊れるものも少なくて済みます。Next.jsのエコシステムで開発しているなら、Next.jsのスターターのほうが合っているでしょう。おすすめは比較ページで紹介しています。

受託開発に使えますか?

はい。MITライセンスで認められていますし、私自身もそうして使っています。クライアント側で別途ライセンスを用意する必要はありません。

本番環境で使えますか?

「現在の対応状況」に載っている部分はCIでテストされています。すべてのプルリクエストでログイン、プロフィール、メモ、グループのテストが走り、マージのたびに全テストが実行されます。Seedは今すぐ使えて、今も成長中です。各部分を本番で頼る前に、対応状況の一覧を確認してください。

1分で動くところを見てみましょう

デモは、初日から手に入るアプリそのものです。登録なしで開けて、ゲストアカウントには最初からサンプルデータが入っています。