Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
NotificationsYou must be signed in to change notification settings

bevyengine/bevy-donors

Repository files navigation

The source of truth for current Bevy Donor data. This syncs data from Every.org and Stripe, combines it with manual configuration indonor_info.toml, and generates donor.toml for use in thebevy-website donation pages.

How This Works

This repo periodically runs theupdate_donors.yml GitHub workflow, which pulls current donor info from Stripe, merges it withdonor_info.toml, and generates two files:

  1. donors.toml: a formatted list of all current and past donors and their relevant metadata (Stripe customer id, amount donated, name, link, logo, etc)
  2. metrics.toml: metrics computed from the data indonors.toml (total monthly donations in USD, donor count, sponsor count)

Entries indonor_info.toml that specify a Stripe or Every.orgcustomer_id field will be merged with the relevant Stripe data. If a field exists both in the Stripe or Every.org data and thedonor_info.toml, thedonor_info.toml value will override the Stripe or Every.org value. For example, you can manually override a link if the donor wants to change it to something else. Entries thatdo not specify acustomer_id will be treated as "manual" entries. Manual entries are generally for donors that donate without Stripe or Every.org via bank transfers.

All metrics are automatically updated based on current Every.org and Stripe donor information.

Adding/Updating Donor Info

First: if you are a donor reading this, note that we are happy to do all of this for you. Feel free to open an issue here or reach out tobevyengine@gmail.com with whatever you want. You are also welcome to make your own changes via a pull request changing/adding your entry todonor_info.toml.

For non-logo tiers, if a donor entered their name or link in the Stripe form, the donor will automatically be added in the next workflow run (at the time of writing, this happens every 8 hours).

If an Every.org or Stripe donor needs to add/change information (name, logo, link, etc), then an entry should be added todonor_info.toml with donor'scustomer_id. Any fields set in this entry will override whatever has been set via the Every.org or Stripe data. Take a look at theexisting donor_info.toml entries for examples.

Finding thecustomer_id

For customers that already filled in some information on Every.org or Stripe when they started their donation, the easiest way to find thecustomer_id is to download the latestdonors.toml release (make sure one has happened since the donation happened) and search for that identifying information. Thecustomer_id will be in that entry.

Every.org donors can also log intoevery.org andthen navigate tohttps://api.www.every.org/api/me. This will return a JSON response.data.user.id is your every.org donor id. Yourcustomer_id is justevery.org:DONOR_ID.

If it cannot be found that way, create an issue here or reach out tosupport@bevyengine.org with your request. We can log into Every.org or Stripe and use other transaction information to find yourcustomer_id. Generally the name and tier are enough to correlate to thecustomer_id.

Logo tiers

Logo tiers need to add their logo to thelogos folder and add an entry todonor_info.toml withlogo = "LOGO.EXTENSION" (ex:logo = "my_logo.png").

Logos are assumed to have a "width dominant" aspect ratio. If a logo is square / roughly square, usesquare_logo = true to give it a slight scale boost (in the interest of visibility fairness with non-square logos). On a case-by-case basis (in the interest of "visibility fairness"), the scale can be fully overridden usinglogo_scale = FLOAT_VALUE.

Authentication

  1. For Stripe integration, generate a new API key and set the STRIPE_SECRET_KEY environment variable (for Github Actions, set this as a bevyengine org secret).
  2. For Every.org integration, log in to Every.org with an admin account, grab the session stored inCookie and then set it as the EVERY_ORG_SESSION_COOKIE environment variable (for Github Actions, set this as a bevyengine org secret).

License

Except where noted (below and/or in individual files), all code in this repository is dual-licensed under either:

at your option.This means you can select the license you prefer!

All logos in thelogos folder, the contents ofdonor_info.toml, generateddonors.toml, and generatedmetrics.toml arenot licensed for use outside of the Bevy project.

This dual-licensing approach is the de-facto standard in the Rust ecosystem and there arevery good reasons to include both.

About

No description, website, or topics provided.

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp