Skip to content

Commit bb04732

Browse files
committed
style(og-images): improve page OG image styling
- Use distinct colors per page: blue (home), orange (blog), green (categories), purple (projects) - Brighten all color schemes - Anchor URL at bottom of each image - Standardize title font size to 100 across all pages
1 parent 188718f commit bb04732

5 files changed

Lines changed: 20 additions & 16 deletions

File tree

public/images/blog-og.png

-8.3 KB
Loading

public/images/categories-og.png

-8.57 KB
Loading

public/images/home-og.png

388 Bytes
Loading

public/images/projects-og.png

-7.25 KB
Loading

scripts/generate-page-og.js

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ function createBaseTemplate(children, gradientColors) {
162162

163163
// Home page template
164164
function createHomeTemplate(logoBase64, caricatureBase64) {
165-
const gradientColors = { start: "#1a1a2e", mid: "#16213e", end: "#0f3460" };
165+
const gradientColors = { start: "#2a2a3e", mid: "#26314e", end: "#1f4470" };
166166

167167
const leftContent = {
168168
type: "div",
@@ -208,7 +208,7 @@ function createHomeTemplate(logoBase64, caricatureBase64) {
208208
style: {
209209
display: "flex",
210210
alignItems: "center",
211-
marginTop: 48,
211+
marginTop: "auto",
212212
},
213213
children: [
214214
{
@@ -271,9 +271,10 @@ function createHomeTemplate(logoBase64, caricatureBase64) {
271271
style: {
272272
display: "flex",
273273
flexDirection: "row",
274-
alignItems: "center",
274+
alignItems: "stretch",
275275
justifyContent: "space-between",
276276
width: "100%",
277+
height: "100%",
277278
},
278279
children: [leftContent, rightContent].filter(Boolean),
279280
},
@@ -285,7 +286,7 @@ function createHomeTemplate(logoBase64, caricatureBase64) {
285286

286287
// Blog page template
287288
function createBlogTemplate(caricatureBase64) {
288-
const gradientColors = { start: "#2d1b4e", mid: "#1e3a5f", end: "#0d2137" };
289+
const gradientColors = { start: "#4d3520", mid: "#5a4028", end: "#6a4830" };
289290

290291
const leftContent = {
291292
type: "div",
@@ -301,7 +302,7 @@ function createBlogTemplate(caricatureBase64) {
301302
type: "div",
302303
props: {
303304
style: {
304-
fontSize: 140,
305+
fontSize: 100,
305306
fontWeight: 700,
306307
color: "#FFFFFF",
307308
lineHeight: 1.1,
@@ -331,7 +332,7 @@ function createBlogTemplate(caricatureBase64) {
331332
style: {
332333
display: "flex",
333334
alignItems: "center",
334-
marginTop: 64,
335+
marginTop: "auto",
335336
},
336337
children: [
337338
{
@@ -394,9 +395,10 @@ function createBlogTemplate(caricatureBase64) {
394395
style: {
395396
display: "flex",
396397
flexDirection: "row",
397-
alignItems: "center",
398+
alignItems: "stretch",
398399
justifyContent: "space-between",
399400
width: "100%",
401+
height: "100%",
400402
},
401403
children: [leftContent, rightContent].filter(Boolean),
402404
},
@@ -408,7 +410,7 @@ function createBlogTemplate(caricatureBase64) {
408410

409411
// Categories page template
410412
function createCategoriesTemplate(caricatureBase64) {
411-
const gradientColors = { start: "#1a2f1a", mid: "#1e3a2e", end: "#0d2f1f" };
413+
const gradientColors = { start: "#2a3f2a", mid: "#2e4a3e", end: "#1d3f2f" };
412414

413415
// Sample category badges
414416
const categories = [".NET", "Visual Studio", "DevOps", "C#", "Open Source", "...And More!"];
@@ -455,7 +457,7 @@ function createCategoriesTemplate(caricatureBase64) {
455457
type: "div",
456458
props: {
457459
style: {
458-
fontSize: 140,
460+
fontSize: 100,
459461
fontWeight: 700,
460462
color: "#FFFFFF",
461463
lineHeight: 1.1,
@@ -484,7 +486,7 @@ function createCategoriesTemplate(caricatureBase64) {
484486
style: {
485487
display: "flex",
486488
alignItems: "center",
487-
marginTop: 48,
489+
marginTop: "auto",
488490
},
489491
children: [
490492
{
@@ -547,9 +549,10 @@ function createCategoriesTemplate(caricatureBase64) {
547549
style: {
548550
display: "flex",
549551
flexDirection: "row",
550-
alignItems: "center",
552+
alignItems: "stretch",
551553
justifyContent: "space-between",
552554
width: "100%",
555+
height: "100%",
553556
},
554557
children: [leftContent, rightContent].filter(Boolean),
555558
},
@@ -561,7 +564,7 @@ function createCategoriesTemplate(caricatureBase64) {
561564

562565
// Projects page template
563566
function createProjectsTemplate(iconImages) {
564-
const gradientColors = { start: "#1a1a2e", mid: "#16213e", end: "#0f3460" };
567+
const gradientColors = { start: "#3a2a50", mid: "#4a3060", end: "#302545" };
565568

566569
const leftContent = {
567570
type: "div",
@@ -577,7 +580,7 @@ function createProjectsTemplate(iconImages) {
577580
type: "div",
578581
props: {
579582
style: {
580-
fontSize: 115,
583+
fontSize: 100,
581584
fontWeight: 700,
582585
color: "#FFFFFF",
583586
lineHeight: 1.1,
@@ -591,7 +594,7 @@ function createProjectsTemplate(iconImages) {
591594
type: "div",
592595
props: {
593596
style: {
594-
fontSize: 115,
597+
fontSize: 100,
595598
fontWeight: 700,
596599
color: "#FFFFFF",
597600
lineHeight: 1.1,
@@ -621,7 +624,7 @@ function createProjectsTemplate(iconImages) {
621624
style: {
622625
display: "flex",
623626
alignItems: "center",
624-
marginTop: 64,
627+
marginTop: "auto",
625628
},
626629
children: [
627630
{
@@ -748,9 +751,10 @@ function createProjectsTemplate(iconImages) {
748751
style: {
749752
display: "flex",
750753
flexDirection: "row",
751-
alignItems: "center",
754+
alignItems: "stretch",
752755
justifyContent: "space-between",
753756
width: "100%",
757+
height: "100%",
754758
},
755759
children: [leftContent, rightContent],
756760
},

0 commit comments

Comments
 (0)