]> git.ipfire.org Git - thirdparty/fastapi/fastapi.git/commitdiff
🔨 Update sponsors script to simplify previews (#15786)
authorSebastián Ramírez <tiangolo@gmail.com>
Wed, 17 Jun 2026 20:36:24 +0000 (22:36 +0200)
committerGitHub <noreply@github.com>
Wed, 17 Jun 2026 20:36:24 +0000 (22:36 +0200)
docs/en/data/sponsors.yml
scripts/docs.py

index 671ede5e8a61c75721bacc26b2cde08799d6a78c..cc71b20b2038bd80adca837c6a1700563632fa0f 100644 (file)
@@ -1,51 +1,51 @@
 keystone:
   - url: https://fastapicloud.com
     title: FastAPI Cloud. By the same team behind FastAPI. You code. We Cloud.
-    img: https://fastapi.tiangolo.com/img/sponsors/fastapicloud.png
+    img: /img/sponsors/fastapicloud.png
 gold:
   - url: https://blockbee.io?ref=fastapi
     title: BlockBee Cryptocurrency Payment Gateway
-    img: https://fastapi.tiangolo.com/img/sponsors/blockbee.png
+    img: /img/sponsors/blockbee.png
   - url: https://www.propelauth.com/?utm_source=fastapi&utm_campaign=1223&utm_medium=mainbadge
     title: Auth, user management and more for your B2B product
-    img: https://fastapi.tiangolo.com/img/sponsors/propelauth.png
+    img: /img/sponsors/propelauth.png
   - url: https://docs.render.com/deploy-fastapi?utm_source=deploydoc&utm_medium=referral&utm_campaign=fastapi
     title: Deploy & scale any full-stack web app on Render. Focus on building apps, not infra.
-    img: https://fastapi.tiangolo.com/img/sponsors/render.svg
+    img: /img/sponsors/render.svg
   - url: https://www.coderabbit.ai/?utm_source=fastapi&utm_medium=badge&utm_campaign=fastapi
     title: Cut Code Review Time & Bugs in Half with CodeRabbit
-    img: https://fastapi.tiangolo.com/img/sponsors/coderabbit.png
+    img: /img/sponsors/coderabbit.png
   - url: https://subtotal.com/?utm_source=fastapi&utm_medium=sponsorship&utm_campaign=open-source
     title: The Gold Standard in Retail Account Linking
-    img: https://fastapi.tiangolo.com/img/sponsors/subtotal.svg
+    img: /img/sponsors/subtotal.svg
   - url: https://docs.railway.com/guides/fastapi?utm_medium=integration&utm_source=docs&utm_campaign=fastapi
     title: Deploy enterprise applications at startup speed
-    img: https://fastapi.tiangolo.com/img/sponsors/railway.png
+    img: /img/sponsors/railway.png
   - url: https://serpapi.com/?utm_source=fastapi_website
     title: "SerpApi: Web Search API"
-    img: https://fastapi.tiangolo.com/img/sponsors/serpapi.png
+    img: /img/sponsors/serpapi.png
   - url: https://www.greptile.com/?utm_source=fastapi&utm_medium=sponsorship&utm_campaign=fastapi_sponsor_page
     title: "Greptile: The AI Code Reviewer"
-    img: https://fastapi.tiangolo.com/img/sponsors/greptile.png
+    img: /img/sponsors/greptile.png
 silver:
   - url: https://databento.com/?utm_source=fastapi&utm_medium=sponsor&utm_content=display
     title: Pay as you go for market data
-    img: https://fastapi.tiangolo.com/img/sponsors/databento.svg
+    img: /img/sponsors/databento.svg
   - url: https://www.svix.com/
     title: Svix - Webhooks as a service
-    img: https://fastapi.tiangolo.com/img/sponsors/svix.svg
+    img: /img/sponsors/svix.svg
   - url: https://www.stainlessapi.com/?utm_source=fastapi&utm_medium=referral
     title: Stainless | Generate best-in-class SDKs
-    img: https://fastapi.tiangolo.com/img/sponsors/stainless.png
+    img: /img/sponsors/stainless.png
   - url: https://www.permit.io/blog/implement-authorization-in-fastapi?utm_source=github&utm_medium=referral&utm_campaign=fastapi
     title: Fine-Grained Authorization for FastAPI
-    img: https://fastapi.tiangolo.com/img/sponsors/permit.png
+    img: /img/sponsors/permit.png
   - url: https://dribia.com/en/
     title: Dribia - Data Science within your reach
-    img: https://fastapi.tiangolo.com/img/sponsors/dribia.png
+    img: /img/sponsors/dribia.png
   - url: https://www.rapidproxy.io/?ref=fastapi
     title: Try RapidProxy for free - Residential Proxies with 90M+ Global IPs. Starting from $0.65/GB for web scraping, automation, and data collection.
-    img: https://fastapi.tiangolo.com/img/sponsors/rapidproxy.png
+    img: /img/sponsors/rapidproxy.png
 bronze:
   # - url: https://testdriven.io/courses/tdd-fastapi/
   #   title: Learn to build high-quality web apps with best practices
index 07c951cc73254b81821c4e998cf7454eee49e972..5b693ba0a39f618510c2cb5f5c28f5d45a5ba368 100644 (file)
@@ -311,22 +311,26 @@ index_sponsors_template = """
 ### Keystone Sponsor
 
 {% for sponsor in sponsors.keystone -%}
-<a href="{{ sponsor.url }}" target="_blank" title="{{ sponsor.title }}"><img src="{{ sponsor.img }}"></a>
+<a href="{{ sponsor.url }}" target="_blank" title="{{ sponsor.title }}"><img src="{{ sponsor_img_url(sponsor.img) }}"></a>
 {% endfor %}
 ### Gold Sponsors
 
 {% for sponsor in sponsors.gold -%}
-<a href="{{ sponsor.url }}" target="_blank" title="{{ sponsor.title }}"><img src="{{ sponsor.img }}"></a>
+<a href="{{ sponsor.url }}" target="_blank" title="{{ sponsor.title }}"><img src="{{ sponsor_img_url(sponsor.img) }}"></a>
 {% endfor %}
 ### Silver Sponsors
 
 {% for sponsor in sponsors.silver -%}
-<a href="{{ sponsor.url }}" target="_blank" title="{{ sponsor.title }}"><img src="{{ sponsor.img }}"></a>
+<a href="{{ sponsor.url }}" target="_blank" title="{{ sponsor.title }}"><img src="{{ sponsor_img_url(sponsor.img) }}"></a>
 {% endfor %}
 
 """
 
 
+def sponsor_img_url(img: str) -> str:
+    return f"https://fastapi.tiangolo.com{img}"
+
+
 def remove_header_permalinks(content: str):
     lines: list[str] = []
     for line in content.split("\n"):
@@ -355,7 +359,7 @@ def generate_readme_content() -> str:
     pre_end = match_start.end()
     post_start = match_end.start()
     template = Template(index_sponsors_template)
-    message = template.render(sponsors=sponsors)
+    message = template.render(sponsors=sponsors, sponsor_img_url=sponsor_img_url)
     pre_content = content[frontmatter_end:pre_end]
     post_content = content[post_start:]
     new_content = pre_content + message + post_content