From c5e35e3466883a1840ad8d38e17063fc1d2692bd Mon Sep 17 00:00:00 2001 From: logikonline Date: Tue, 17 Mar 2026 03:25:14 -0400 Subject: [PATCH] refactor(pages): move app store badges to hero section and add section IDs Move Google Play and App Store badges from downloads section to hero section for better visibility. Removes redundant display when both downloads and app stores are present. Add id attributes to major sections (hero, stats, downloads, social-proof, cta, etc.) for anchor link navigation. Applies to all 9 page templates. Improves UX for mobile app landing pages. --- templates/pages/architecture-deep-dive.tmpl | 56 ++++++++----------- templates/pages/bold-marketing.tmpl | 49 ++++++++--------- templates/pages/cli-terminal.tmpl | 56 ++++++++----------- templates/pages/developer-tool.tmpl | 56 ++++++++----------- templates/pages/documentation-first.tmpl | 56 ++++++++----------- templates/pages/minimalist-docs.tmpl | 53 ++++++++---------- templates/pages/open-source-hero.tmpl | 56 ++++++++----------- templates/pages/saas-conversion.tmpl | 61 +++++++++++---------- templates/pages/visual-showcase.tmpl | 56 ++++++++----------- templates/repo/settings/pages_hero.tmpl | 1 + templates/repo/settings/pages_theme.tmpl | 6 +- 11 files changed, 217 insertions(+), 289 deletions(-) diff --git a/templates/pages/architecture-deep-dive.tmpl b/templates/pages/architecture-deep-dive.tmpl index f76914c9ae..92fd5aec72 100644 --- a/templates/pages/architecture-deep-dive.tmpl +++ b/templates/pages/architecture-deep-dive.tmpl @@ -1102,7 +1102,7 @@ {{else}} -
+
@@ -1123,11 +1123,6 @@ {{.Config.Hero.PrimaryCTA.Label}} {{svg "octicon-arrow-right" 16}} - {{else}} - - Get Started - {{svg "octicon-arrow-right" 16}} - {{end}} {{if .Config.Hero.SecondaryCTA.Label}} @@ -1135,14 +1130,26 @@ GitCaddy {{.Config.Hero.SecondaryCTA.Label}} - {{else}} - - GitCaddy - View Source - {{end}}
+ {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}} + {{if .Config.Hero.CodeExample}}
$ @@ -1157,7 +1164,7 @@ {{if or .Config.Stats (gt .NumStars 0)}} -
+
{{if .Config.Stats}} {{range .Config.Stats}} @@ -1188,7 +1195,7 @@ {{if and .PublicReleases .LatestRelease .LatestRelease.Attachments}} -
+

Download v{{.LatestReleaseTag}}

Get the latest release

@@ -1251,25 +1258,6 @@
{{end}} {{end}} - {{if or $.GooglePlayID $.AppStoreID}} -
-

{{svg "octicon-device-mobile" 16}} App Stores

-
- {{if $.GooglePlayID}} - - - Google Play - - {{end}} - {{if $.AppStoreID}} - - - App Store - - {{end}} -
-
- {{end}} {{if $otherFiles}}

{{svg "octicon-file" 16}} Other

@@ -1332,7 +1320,7 @@ {{if or .Config.SocialProof.Logos .Config.SocialProof.Testimonials}} -
+
{{if .Config.SocialProof.Logos}}
@@ -1398,7 +1386,7 @@ {{if .Config.CTASection.Headline}} -
+

{{.Config.CTASection.Headline}}

{{if .Config.CTASection.Subheadline}} diff --git a/templates/pages/bold-marketing.tmpl b/templates/pages/bold-marketing.tmpl index 19486819a0..542676e089 100644 --- a/templates/pages/bold-marketing.tmpl +++ b/templates/pages/bold-marketing.tmpl @@ -28,6 +28,7 @@ .nb-reveal-delay-1 { transition-delay: 0.1s; } .nb-reveal-delay-2 { transition-delay: 0.2s; } .nb-reveal-delay-3 { transition-delay: 0.3s; } + .nb-reveal-delay-4 { transition-delay: 0.4s; } .nb-page { min-height: 100vh; @@ -1248,7 +1249,7 @@
{{else}} -
+
*
@@ -1273,12 +1274,29 @@ {{end}}
+ + {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}}
{{if .Config.Stats}} -
+
{{range .Config.Stats}}
@@ -1291,7 +1309,7 @@ {{end}} {{if and .PublicReleases .LatestRelease .LatestRelease.Attachments}} -
+
@@ -1357,25 +1375,6 @@
{{end}} {{end}} - {{if or $.GooglePlayID $.AppStoreID}} -
-

{{svg "octicon-device-mobile" 16}} App Stores

-
- {{if $.GooglePlayID}} - - - Google Play - - {{end}} - {{if $.AppStoreID}} - - - App Store - - {{end}} -
-
- {{end}} {{if $otherFiles}}

{{svg "octicon-file" 16}} Other

@@ -1390,7 +1389,7 @@ {{if .Config.SocialProof.Logos}} -
+

Trusted by the best

{{range .Config.SocialProof.Logos}} @@ -1474,7 +1473,7 @@ {{if .Config.SocialProof.Testimonials}} -
+
@@ -1508,7 +1507,7 @@ {{if .Config.CTASection.Headline}} -
+

{{.Config.CTASection.Headline}}

{{if .Config.CTASection.Subheadline}} diff --git a/templates/pages/cli-terminal.tmpl b/templates/pages/cli-terminal.tmpl index 76d481021e..e071085d33 100644 --- a/templates/pages/cli-terminal.tmpl +++ b/templates/pages/cli-terminal.tmpl @@ -1108,7 +1108,7 @@
{{else}} -
+
@@ -1130,11 +1130,6 @@ {{.Config.Hero.PrimaryCTA.Label}} {{svg "octicon-arrow-right" 16}} - {{else}} - - Get Started - {{svg "octicon-arrow-right" 16}} - {{end}} {{if .Config.Hero.SecondaryCTA.Label}} @@ -1142,14 +1137,26 @@ GitCaddy {{.Config.Hero.SecondaryCTA.Label}} - {{else}} - - GitCaddy - View Source - {{end}}
+ {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}} + {{if .Config.Hero.CodeExample}}
@@ -1172,7 +1179,7 @@ {{if or .Config.Stats (gt .NumStars 0)}} -
+
{{if .Config.Stats}} {{range .Config.Stats}} @@ -1203,7 +1210,7 @@ {{if and .PublicReleases .LatestRelease .LatestRelease.Attachments}} -
+

Download v{{.LatestReleaseTag}}

Get the latest release

@@ -1266,25 +1273,6 @@
{{end}} {{end}} - {{if or $.GooglePlayID $.AppStoreID}} -
-

{{svg "octicon-device-mobile" 16}} App Stores

-
- {{if $.GooglePlayID}} - - - Google Play - - {{end}} - {{if $.AppStoreID}} - - - App Store - - {{end}} -
-
- {{end}} {{if $otherFiles}}

{{svg "octicon-file" 16}} Other

@@ -1347,7 +1335,7 @@ {{if or .Config.SocialProof.Logos .Config.SocialProof.Testimonials}} -
+
{{if .Config.SocialProof.Logos}}
@@ -1413,7 +1401,7 @@ {{if .Config.CTASection.Headline}} -
+

{{.Config.CTASection.Headline}}

{{if .Config.CTASection.Subheadline}} diff --git a/templates/pages/developer-tool.tmpl b/templates/pages/developer-tool.tmpl index 720a5fb6d4..7d5ee6fb11 100644 --- a/templates/pages/developer-tool.tmpl +++ b/templates/pages/developer-tool.tmpl @@ -991,7 +991,7 @@
{{else}} -
+
status @@ -1011,11 +1011,6 @@ {{.Config.Hero.PrimaryCTA.Label}} {{svg "octicon-arrow-right" 16}} - {{else}} - - Get Started - {{svg "octicon-arrow-right" 16}} - {{end}} {{if .Config.Hero.SecondaryCTA.Label}} @@ -1023,14 +1018,26 @@ GitCaddy {{.Config.Hero.SecondaryCTA.Label}} - {{else}} - - GitCaddy - View Source - {{end}}
+ {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}} + {{if .Config.Hero.CodeExample}}
$ @@ -1045,7 +1052,7 @@ {{if or .Config.Stats (gt .NumStars 0)}} -
+
{{if .Config.Stats}} {{range .Config.Stats}} @@ -1076,7 +1083,7 @@ {{if and .PublicReleases .LatestRelease .LatestRelease.Attachments}} -
+

Download v{{.LatestReleaseTag}}

Get the latest release

@@ -1139,25 +1146,6 @@
{{end}} {{end}} - {{if or $.GooglePlayID $.AppStoreID}} -
-

{{svg "octicon-device-mobile" 16}} App Stores

-
- {{if $.GooglePlayID}} - - - Google Play - - {{end}} - {{if $.AppStoreID}} - - - App Store - - {{end}} -
-
- {{end}} {{if $otherFiles}}

{{svg "octicon-file" 16}} Other

@@ -1220,7 +1208,7 @@ {{if or .Config.SocialProof.Logos .Config.SocialProof.Testimonials}} -
+
{{if .Config.SocialProof.Logos}}
@@ -1286,7 +1274,7 @@ {{if .Config.CTASection.Headline}} -
+

{{.Config.CTASection.Headline}}

{{if .Config.CTASection.Subheadline}} diff --git a/templates/pages/documentation-first.tmpl b/templates/pages/documentation-first.tmpl index 772fa51a13..45da50164a 100644 --- a/templates/pages/documentation-first.tmpl +++ b/templates/pages/documentation-first.tmpl @@ -1016,7 +1016,7 @@
{{else}} -
+
@@ -1035,11 +1035,6 @@ {{.Config.Hero.PrimaryCTA.Label}} {{svg "octicon-arrow-right" 16}} - {{else}} - - Get Started - {{svg "octicon-arrow-right" 16}} - {{end}} {{if .Config.Hero.SecondaryCTA.Label}} @@ -1047,14 +1042,26 @@ GitCaddy {{.Config.Hero.SecondaryCTA.Label}} - {{else}} - - GitCaddy - View Source - {{end}}
+ {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}} + {{if .Config.Hero.CodeExample}}
$ @@ -1069,7 +1076,7 @@ {{if or .Config.Stats (gt .NumStars 0)}} -
+
{{if .Config.Stats}} {{range .Config.Stats}} @@ -1100,7 +1107,7 @@ {{if and .PublicReleases .LatestRelease .LatestRelease.Attachments}} -
+

Download v{{.LatestReleaseTag}}

Get the latest release

@@ -1163,25 +1170,6 @@
{{end}} {{end}} - {{if or $.GooglePlayID $.AppStoreID}} -
-

{{svg "octicon-device-mobile" 16}} App Stores

-
- {{if $.GooglePlayID}} - - - Google Play - - {{end}} - {{if $.AppStoreID}} - - - App Store - - {{end}} -
-
- {{end}} {{if $otherFiles}}

{{svg "octicon-file" 16}} Other

@@ -1244,7 +1232,7 @@ {{if or .Config.SocialProof.Logos .Config.SocialProof.Testimonials}} -
+
{{if .Config.SocialProof.Logos}}
@@ -1310,7 +1298,7 @@ {{if .Config.CTASection.Headline}} -
+

{{.Config.CTASection.Headline}}

{{if .Config.CTASection.Subheadline}} diff --git a/templates/pages/minimalist-docs.tmpl b/templates/pages/minimalist-docs.tmpl index 5957d70960..c93e38cf32 100644 --- a/templates/pages/minimalist-docs.tmpl +++ b/templates/pages/minimalist-docs.tmpl @@ -1112,7 +1112,7 @@
{{else}} -
+
{{if .Config.Brand.Name}}{{.Config.Brand.Name}}{{else}}Open Source{{end}}
@@ -1125,14 +1125,26 @@ {{.Config.Hero.PrimaryCTA.Label}} {{svg "octicon-arrow-right" 14}} - {{else}} - - Get Started - {{svg "octicon-arrow-right" 14}} - {{end}}
+ {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}} + {{if .Config.Hero.CodeExample}}
{{else}} -
+
@@ -1103,11 +1103,6 @@ {{.Config.Hero.PrimaryCTA.Label}} {{svg "octicon-arrow-right" 16}} - {{else}} - - Get Started - {{svg "octicon-arrow-right" 16}} - {{end}} {{if .Config.Hero.SecondaryCTA.Label}} @@ -1115,14 +1110,26 @@ GitCaddy {{.Config.Hero.SecondaryCTA.Label}} - {{else}} - - GitCaddy - View Source - {{end}}
+ {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}} + {{if .Config.Hero.CodeExample}}
$ @@ -1137,7 +1144,7 @@ {{if or .Config.Stats (gt .NumStars 0)}} -
+
{{if .Config.Stats}} {{range .Config.Stats}} @@ -1168,7 +1175,7 @@ {{if and .PublicReleases .LatestRelease .LatestRelease.Attachments}} -
+

Download v{{.LatestReleaseTag}}

Get the latest release

@@ -1231,25 +1238,6 @@
{{end}} {{end}} - {{if or $.GooglePlayID $.AppStoreID}} -
-

{{svg "octicon-device-mobile" 16}} App Stores

-
- {{if $.GooglePlayID}} - - - Google Play - - {{end}} - {{if $.AppStoreID}} - - - App Store - - {{end}} -
-
- {{end}} {{if $otherFiles}}

{{svg "octicon-file" 16}} Other

@@ -1312,7 +1300,7 @@ {{if or .Config.SocialProof.Logos .Config.SocialProof.Testimonials}} -
+
{{if .Config.SocialProof.Logos}}
@@ -1378,7 +1366,7 @@ {{if .Config.CTASection.Headline}} -
+

{{.Config.CTASection.Headline}}

{{if .Config.CTASection.Subheadline}} diff --git a/templates/pages/saas-conversion.tmpl b/templates/pages/saas-conversion.tmpl index 8fe97ce97a..fcc1b91259 100644 --- a/templates/pages/saas-conversion.tmpl +++ b/templates/pages/saas-conversion.tmpl @@ -30,6 +30,7 @@ .gm-reveal-delay-1 { transition-delay: 0.12s; } .gm-reveal-delay-2 { transition-delay: 0.24s; } .gm-reveal-delay-3 { transition-delay: 0.36s; } + .gm-reveal-delay-4 { transition-delay: 0.48s; } .gm-page { min-height: 100vh; @@ -1131,9 +1132,11 @@
{{end}} - - {{if .Config.Hero.PrimaryCTA.Label}}{{.Config.Hero.PrimaryCTA.Label}}{{else}}Get Started{{end}} + {{if .Config.Hero.PrimaryCTA.Label}} + + {{.Config.Hero.PrimaryCTA.Label}} + {{end}}
@@ -1221,7 +1224,7 @@
{{else}} -
+
{{if gt .NumStars 100}} @@ -1238,12 +1241,14 @@

+ {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}} +
{{svg "octicon-check" 14}} Free to use {{svg "octicon-check" 14}} Open source @@ -1280,7 +1302,7 @@ {{if .Config.Stats}} -
+
{{range .Config.Stats}}
@@ -1293,7 +1315,7 @@ {{end}} {{if and .PublicReleases .LatestRelease .LatestRelease.Attachments}} -
+

Download v{{.LatestReleaseTag}}

@@ -1358,25 +1380,6 @@
{{end}} {{end}} - {{if or $.GooglePlayID $.AppStoreID}} -
-

{{svg "octicon-device-mobile" 16}} App Stores

-
- {{if $.GooglePlayID}} - - - Google Play - - {{end}} - {{if $.AppStoreID}} - - - App Store - - {{end}} -
-
- {{end}} {{if $otherFiles}}

{{svg "octicon-file" 16}} Other

@@ -1391,7 +1394,7 @@ {{if .Config.SocialProof.Logos}} -
+

Trusted by teams at

{{range .Config.SocialProof.Logos}} @@ -1450,7 +1453,7 @@ {{if .Config.SocialProof.Testimonials}} -
+
{{range .Config.SocialProof.Testimonials}} @@ -1518,7 +1521,7 @@ {{if .Config.CTASection.Headline}} -
+

{{.Config.CTASection.Headline}}

{{if .Config.CTASection.Subheadline}} diff --git a/templates/pages/visual-showcase.tmpl b/templates/pages/visual-showcase.tmpl index db3315a76c..efa9f56c63 100644 --- a/templates/pages/visual-showcase.tmpl +++ b/templates/pages/visual-showcase.tmpl @@ -1118,7 +1118,7 @@
{{else}} -
+
@@ -1143,11 +1143,6 @@ {{.Config.Hero.PrimaryCTA.Label}} {{svg "octicon-arrow-right" 16}} - {{else}} - - Get Started - {{svg "octicon-arrow-right" 16}} - {{end}} {{if .Config.Hero.SecondaryCTA.Label}} @@ -1155,14 +1150,26 @@ GitCaddy {{.Config.Hero.SecondaryCTA.Label}} - {{else}} - - GitCaddy - View Source - {{end}}
+ {{if or $.GooglePlayID $.AppStoreID}} +
+ {{if $.GooglePlayID}} + + + Google Play + + {{end}} + {{if $.AppStoreID}} + + + App Store + + {{end}} +
+ {{end}} + {{if .Config.Hero.CodeExample}}
$ @@ -1177,7 +1184,7 @@ {{if or .Config.Stats (gt .NumStars 0)}} -
+
{{if .Config.Stats}} {{range .Config.Stats}} @@ -1208,7 +1215,7 @@ {{if and .PublicReleases .LatestRelease .LatestRelease.Attachments}} -
+

Download v{{.LatestReleaseTag}}

Get the latest release

@@ -1271,25 +1278,6 @@
{{end}} {{end}} - {{if or $.GooglePlayID $.AppStoreID}} -
-

{{svg "octicon-device-mobile" 16}} App Stores

-
- {{if $.GooglePlayID}} - - - Google Play - - {{end}} - {{if $.AppStoreID}} - - - App Store - - {{end}} -
-
- {{end}} {{if $otherFiles}}

{{svg "octicon-file" 16}} Other

@@ -1352,7 +1340,7 @@ {{if or .Config.SocialProof.Logos .Config.SocialProof.Testimonials}} -
+
{{if .Config.SocialProof.Logos}}
@@ -1418,7 +1406,7 @@ {{if .Config.CTASection.Headline}} -
+

{{.Config.CTASection.Headline}}

{{if .Config.CTASection.Subheadline}} diff --git a/templates/repo/settings/pages_hero.tmpl b/templates/repo/settings/pages_hero.tmpl index 730f0a19e9..3b73e380b4 100644 --- a/templates/repo/settings/pages_hero.tmpl +++ b/templates/repo/settings/pages_hero.tmpl @@ -37,6 +37,7 @@
+
{{end}}
diff --git a/templates/repo/settings/pages_theme.tmpl b/templates/repo/settings/pages_theme.tmpl index 3ba1c8ab2e..abbcced778 100644 --- a/templates/repo/settings/pages_theme.tmpl +++ b/templates/repo/settings/pages_theme.tmpl @@ -97,7 +97,7 @@
- +
@@ -170,6 +170,10 @@ document.getElementById('use-media-kit-og').addEventListener('change', function() { document.getElementById('og-image-manual').style.display = this.checked ? 'none' : ''; document.getElementById('og-image-preview').style.display = this.checked ? '' : 'none'; + if (this.checked) { + const img = document.getElementById('og-preview-img'); + img.src = img.src.replace(/[?&]v=\d+/, '') + '?v=' + Date.now(); + } }); function updateColorPreview(type) {