Skip to content

Commit f35a920

Browse files
montanalowMontana Low
andauthored
make github stars dynamic (#808)
Co-authored-by: Montana Low <montanalow@gmail.com>
1 parent c7bbe7e commit f35a920

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

pgml-dashboard/src/utils/config.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
use std::env::var;
22

3+
use anyhow::anyhow;
4+
35
pub fn dev_mode() -> bool {
46
match var("DEV_MODE") {
57
Ok(_) => true,
@@ -103,3 +105,13 @@ pub fn signup_url() -> String {
103105
pub fn standalone_dashboard() -> bool {
104106
!env!("CARGO_MANIFEST_DIR").contains("deps") && !env!("CARGO_MANIFEST_DIR").contains("cloud2")
105107
}
108+
109+
pub fn github_stars() -> anyhow::Result<String> {
110+
match var("GITHUB_STARS") {
111+
Ok(stars) => match stars.parse::<f32>() {
112+
Ok(stars) => Ok(format!("{:.1}K", (stars / 1000.0))),
113+
_ => Err(anyhow!("Could not parse GITHUB_STARS: {}", stars)),
114+
},
115+
_ => Err(anyhow!("No GITHUB_STARS env var set")),
116+
}
117+
}

pgml-dashboard/templates/components/github_icon.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<a class="d-flex align-items-center nav-link p-0 border-bottom-0" href="https://github.com/postgresml/postgresml">
2-
<span class="badge github-badge"><p>Stars | 3.3K</p></span>
2+
<% if let Ok(stars) = crate::utils::config::github_stars() { %>
3+
<span class="badge github-badge"><p>Stars | <%= stars %></p></span>
4+
<% } %>
35
<svg width="35" height="35" viewBox="0 0 40 39" fill="none" xmlns="http://www.w3.org/2000/svg">
46
<path d="M20 0.25C17.3736 0.25 14.7728 0.763591 12.3463 1.76145C9.91982 2.75931 7.71504 4.22189 5.85786 6.06569C2.10714 9.78942 0 14.8399 0 20.106C0 28.8824 5.74 36.3284 13.68 38.9692C14.68 39.1281 15 38.5126 15 37.9764V34.6208C9.46 35.8121 8.28 31.9601 8.28 31.9601C7.36 29.6568 6.06 29.0412 6.06 29.0412C4.24 27.8102 6.2 27.8499 6.2 27.8499C8.2 27.9889 9.26 29.895 9.26 29.895C11 32.9132 13.94 32.0196 15.08 31.5431C15.26 30.2525 15.78 29.3788 16.34 28.8824C11.9 28.386 7.24 26.6784 7.24 19.1132C7.24 16.9092 8 15.142 9.3 13.7322C9.1 13.2358 8.4 11.1708 9.5 8.49025C9.5 8.49025 11.18 7.95414 15 10.5156C16.58 10.0787 18.3 9.86032 20 9.86032C21.7 9.86032 23.42 10.0787 25 10.5156C28.82 7.95414 30.5 8.49025 30.5 8.49025C31.6 11.1708 30.9 13.2358 30.7 13.7322C32 15.142 32.76 16.9092 32.76 19.1132C32.76 26.6982 28.08 28.3661 23.62 28.8625C24.34 29.4781 25 30.6893 25 32.5359V37.9764C25 38.5126 25.32 39.1479 26.34 38.9692C34.28 36.3085 40 28.8824 40 20.106C40 17.4985 39.4827 14.9165 38.4776 12.5075C37.4725 10.0984 35.9993 7.9095 34.1421 6.06569C32.285 4.22189 30.0802 2.75931 27.6537 1.76145C25.2272 0.763591 22.6264 0.25 20 0.25Z" fill="#FAFAFA"/>
57
</svg>

0 commit comments

Comments
 (0)