Skip to content

Commit 1f66083

Browse files
georgeglarsonclaude
andcommitted
Link README to live demo and add GitHub source button to site header
README now links to https://truefit.georgelarson.me. The site header shows a GitHub icon + "Source" button linking back to the repo. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 1c630e3 commit 1f66083

2 files changed

Lines changed: 41 additions & 3 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[![CI](https://github.com/georgeglarson/truefit/actions/workflows/ci.yml/badge.svg)](https://github.com/georgeglarson/truefit/actions/workflows/ci.yml)
44

5-
Solutions to TrueFit's coding challenges. Each exercise is implemented in a different language, chosen to match the problem domain.
5+
**[Live Demo](https://truefit.georgelarson.me)** | Solutions to TrueFit's coding challenges. Each exercise is implemented in a different language, chosen to match the problem domain.
66

77
## Exercises
88

RestaurantReviews/src/client/App.tsx

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,22 @@ export function App() {
2424
return (
2525
<div style={styles.shell}>
2626
<header style={styles.header}>
27-
<h1 style={styles.h1}>TrueFit Code Challenge</h1>
28-
<span style={styles.subtitle}>6 exercises &middot; 6 languages &middot; 830+ tests</span>
27+
<div style={styles.headerLeft}>
28+
<h1 style={styles.h1}>TrueFit Code Challenge</h1>
29+
<span style={styles.subtitle}>6 exercises &middot; 6 languages &middot; 830+ tests</span>
30+
</div>
31+
<a
32+
href="https://github.com/georgeglarson/truefit"
33+
target="_blank"
34+
rel="noopener noreferrer"
35+
style={styles.repoLink}
36+
title="View source on GitHub"
37+
>
38+
<svg style={styles.githubIcon} viewBox="0 0 16 16" fill="currentColor">
39+
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z" />
40+
</svg>
41+
Source
42+
</a>
2943
</header>
3044
<TabNav activeTab={activeTab} onTabChange={setActiveTab} />
3145
<main style={styles.main}>
@@ -45,6 +59,13 @@ const styles = {
4559
padding: "20px 28px 16px",
4660
background: "#1e293b",
4761
borderBottom: "1px solid #334155",
62+
display: "flex",
63+
alignItems: "center",
64+
justifyContent: "space-between",
65+
flexWrap: "wrap" as const,
66+
gap: "12px",
67+
},
68+
headerLeft: {
4869
display: "flex",
4970
alignItems: "baseline",
5071
gap: "16px",
@@ -61,6 +82,23 @@ const styles = {
6182
color: "#64748b",
6283
fontWeight: 400,
6384
},
85+
repoLink: {
86+
display: "flex",
87+
alignItems: "center",
88+
gap: "6px",
89+
color: "#94a3b8",
90+
fontSize: "13px",
91+
fontWeight: 500,
92+
textDecoration: "none",
93+
padding: "6px 12px",
94+
borderRadius: "6px",
95+
border: "1px solid #334155",
96+
transition: "color 0.15s, border-color 0.15s",
97+
},
98+
githubIcon: {
99+
width: "16px",
100+
height: "16px",
101+
},
64102
main: {
65103
flex: 1,
66104
maxWidth: "960px",

0 commit comments

Comments
 (0)