Skip to content

tkgshn/digshibuya

 
 

Repository files navigation

DIGSHIBUYA 参加型寄付 💰

DIGSHIBUYAの一環で参加型寄付を実験するプロジェクトのドキュメントです。 詳細は、 https://donation.digshibuya.com をご覧ください。

このプロジェクトはOwockiが率いるSupermodulerチームが「Simple Grant」という名で開発されていたが、頓挫現在はGitcoinの下でWeb2 QFツールが開発されているが、途中。 この状況により、DigDAO マッチングドネーション (DIGSHIBUYA 参加型寄付)では元々のツールを使うことにした。

Note

DIGSHIBUYA 参加型寄付プロジェクトは、simplegrant→DigDAOと使用されていたものをforkして利用しています。

プロジェクトの目的 🎯

  • Quadratic Funding(「参加型寄付」)をアーティスト支援として活用してみる
  • 商業的な作品を作ることで資金を得る以外の方法を模索していく

このプロジェクトについて ❓

DigDAOにて、インパクトファンディングプロジェクトを担当したtkgshnが進めています。

DIGSHIBUYAという実験的なアートフェスティバルを開催するので、資金分配の実験ができないかということで打診をもらいました。

Quadratic Funding(QF)はデジタル公共財に対して使われたケースが多い中、アーティスト・アートの資金的な持続可能性というテーマで進めるのはユニークだと考えています。QFは行政組織などが恣意性を持たずに助成金や補助金を分配する手段としても有効なので、文化事業で実験するのも面白いかなと思います。

ソフトウェアアーキテクチャー 📄

DIGSHIBUYA 参加型寄付では、renderにdeployをしています。

このリポジトリの使い方 🛠

このリポジトリはbackendおよびfrontendの2つのフォルダに分かれており、フォルダ名は自己説明的です。セットアップ方法についての詳細は、各フォルダ内のREADMEをご覧ください!

インストールとセットアップ 🧪

  1. リポジトリをクローンする
  2. backendフォルダに移動し、Backend READMEに記載されているインストールとセットアップの指示に従う。
  3. frontendフォルダに移動し、Frontend READMEに記載されているインストールとセットアップの指示に従う。

ローカル開発 👨🏻‍💻

ローカル開発のためにサービスを実行したい場合は、以下の手順に従ってください。

  1. まず、上記のように各フォルダのREADMEに記載されているとおりにすべてをインストールしセットアップします。まだサービスを実行する必要はありません。
  2. 支払いプロバイダとしてStripeを使用している場合は、Stripe CLIがセットアップされ、すでにログインしていることを確認してください。
  3. すべてがセットアップされたら、以下のコマンドを実行して必要なサービスをすぐに立ち上げます。
# フロントエンドとバックエンドの.envを適宜更新
# その後、全てをビルドして実行
# これにより、自動的にシード、マイグレーションが実行され、StripeのWebhookリスナーが起動します
$ npm run start:dev

デプロイメント設定 🚀

このアプリケーションをデプロイしたい場合、プロセスを少し速めるのに役立つシンプルなスクリプトがあります。

  1. まず、上記の各フォルダのREADMEに記載されているとおりに全てをインストールし、セットアップしてください。まだサービスを実行する必要はありません。
  2. 全てがセットアップされたら、以下のコマンドを実行して必要なサービスを即座に立ち上げます。注意: これは、複数のプラットフォームにホスティングするのではなく、Dockerを使用してすべてを一つのサーバーにデプロイすることを前提としています
# フロントエンドとバックエンドの.envを適宜更新
# その後、全てを一つのサーバーにデプロイ
# 必要に応じてシードとマイグレーションが自動的に実行されます
$ npm run start
  1. 支払いプロバイダーのWebhookが適切に設定されていることを確認してください。
  2. Dockerを使用しているため、コンテナ間でlocalhostを介して通信することができないことを覚えておくことが非常に重要です。これは、理想的にはNGINX(または使用しているリバースプロキシ)をサービスを指すように設定し、環境変数を正規のURLを使用するように変更することを意味します。

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 98.0%
  • JavaScript 1.3%
  • Other 0.7%