Skip to content

Commit b4dba22

Browse files
authored
Promotion & New Photos (#68)
* update packages * Update Theme management and footer * update about page * album update
1 parent 0fb7beb commit b4dba22

26 files changed

Lines changed: 1690 additions & 1204 deletions

package-lock.json

Lines changed: 1362 additions & 1121 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
},
2626
"devDependencies": {
2727
"@eslint/js": "^9.9.0",
28+
"@types/node": "^24.10.1",
2829
"@types/react": "^18.3.3",
2930
"@types/react-dom": "^18.3.0",
3031
"@vitejs/plugin-react": "^4.3.1",

src/assets/albums/rolls-2026.json

Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,5 +81,139 @@
8181
"2026-01-24-NFM-A-delta-3200-34.jpg": {},
8282
"2026-01-24-NFM-A-delta-3200-35.jpg": {}
8383
}
84+
},
85+
"start-2026-1": {
86+
"name": "Start of 2026 - 1",
87+
"thumbnail": "2026-04-07-NFM-A-portra-800-19.jpg",
88+
"film_stock": "Kodak Portra 800",
89+
"photos": {
90+
"2026-04-07-NFM-A-portra-800-01.jpg": {},
91+
"2026-04-07-NFM-A-portra-800-02.jpg": {},
92+
"2026-04-07-NFM-A-portra-800-03.jpg": {},
93+
"2026-04-07-NFM-A-portra-800-04.jpg": {},
94+
"2026-04-07-NFM-A-portra-800-05.jpg": {},
95+
"2026-04-07-NFM-A-portra-800-06.jpg": {},
96+
"2026-04-07-NFM-A-portra-800-07.jpg": {},
97+
"2026-04-07-NFM-A-portra-800-08.jpg": {},
98+
"2026-04-07-NFM-A-portra-800-09.jpg": {},
99+
"2026-04-07-NFM-A-portra-800-10.jpg": {},
100+
"2026-04-07-NFM-A-portra-800-11.jpg": {},
101+
"2026-04-07-NFM-A-portra-800-12.jpg": {},
102+
"2026-04-07-NFM-A-portra-800-13.jpg": {},
103+
"2026-04-07-NFM-A-portra-800-14.jpg": {},
104+
"2026-04-07-NFM-A-portra-800-15.jpg": {},
105+
"2026-04-07-NFM-A-portra-800-16.jpg": {},
106+
"2026-04-07-NFM-A-portra-800-17.jpg": {},
107+
"2026-04-07-NFM-A-portra-800-18.jpg": {},
108+
"2026-04-07-NFM-A-portra-800-19.jpg": {},
109+
"2026-04-07-NFM-A-portra-800-20.jpg": {},
110+
"2026-04-07-NFM-A-portra-800-21.jpg": {},
111+
"2026-04-07-NFM-A-portra-800-22.jpg": {},
112+
"2026-04-07-NFM-A-portra-800-23.jpg": {},
113+
"2026-04-07-NFM-A-portra-800-24.jpg": {},
114+
"2026-04-07-NFM-A-portra-800-25.jpg": {},
115+
"2026-04-07-NFM-A-portra-800-26.jpg": {},
116+
"2026-04-07-NFM-A-portra-800-27.jpg": {},
117+
"2026-04-07-NFM-A-portra-800-28.jpg": {},
118+
"2026-04-07-NFM-A-portra-800-29.jpg": {},
119+
"2026-04-07-NFM-A-portra-800-30.jpg": {},
120+
"2026-04-07-NFM-A-portra-800-31.jpg": {},
121+
"2026-04-07-NFM-A-portra-800-32.jpg": {},
122+
"2026-04-07-NFM-A-portra-800-33.jpg": {},
123+
"2026-04-07-NFM-A-portra-800-34.jpg": {},
124+
"2026-04-07-NFM-A-portra-800-35.jpg": {}
125+
}
126+
},
127+
"start-2026-2": {
128+
"name": "Start of 2026 - 2",
129+
"thumbnail": "2026-04-07-OTP-A-ultramax-32.jpg",
130+
"film_stock": "Kodak Ultramax 400",
131+
"photos": {
132+
"2026-04-07-OTP-A-ultramax-01.jpg": {},
133+
"2026-04-07-OTP-A-ultramax-02.jpg": {},
134+
"2026-04-07-OTP-A-ultramax-03.jpg": {},
135+
"2026-04-07-OTP-A-ultramax-04.jpg": {},
136+
"2026-04-07-OTP-A-ultramax-05.jpg": {},
137+
"2026-04-07-OTP-A-ultramax-06.jpg": {},
138+
"2026-04-07-OTP-A-ultramax-07.jpg": {},
139+
"2026-04-07-OTP-A-ultramax-08.jpg": {},
140+
"2026-04-07-OTP-A-ultramax-09.jpg": {},
141+
"2026-04-07-OTP-A-ultramax-10.jpg": {},
142+
"2026-04-07-OTP-A-ultramax-11.jpg": {},
143+
"2026-04-07-OTP-A-ultramax-12.jpg": {},
144+
"2026-04-07-OTP-A-ultramax-13.jpg": {},
145+
"2026-04-07-OTP-A-ultramax-14.jpg": {},
146+
"2026-04-07-OTP-A-ultramax-15.jpg": {},
147+
"2026-04-07-OTP-A-ultramax-16.jpg": {},
148+
"2026-04-07-OTP-A-ultramax-17.jpg": {},
149+
"2026-04-07-OTP-A-ultramax-18.jpg": {},
150+
"2026-04-07-OTP-A-ultramax-19.jpg": {},
151+
"2026-04-07-OTP-A-ultramax-20.jpg": {},
152+
"2026-04-07-OTP-A-ultramax-21.jpg": {},
153+
"2026-04-07-OTP-A-ultramax-22.jpg": {},
154+
"2026-04-07-OTP-A-ultramax-23.jpg": {},
155+
"2026-04-07-OTP-A-ultramax-24.jpg": {},
156+
"2026-04-07-OTP-A-ultramax-25.jpg": {},
157+
"2026-04-07-OTP-A-ultramax-26.jpg": {},
158+
"2026-04-07-OTP-A-ultramax-27.jpg": {},
159+
"2026-04-07-OTP-A-ultramax-28.jpg": {},
160+
"2026-04-07-OTP-A-ultramax-29.jpg": {},
161+
"2026-04-07-OTP-A-ultramax-30.jpg": {},
162+
"2026-04-07-OTP-A-ultramax-31.jpg": {},
163+
"2026-04-07-OTP-A-ultramax-32.jpg": {},
164+
"2026-04-07-OTP-A-ultramax-33.jpg": {},
165+
"2026-04-07-OTP-A-ultramax-34.jpg": {},
166+
"2026-04-07-OTP-A-ultramax-35.jpg": {},
167+
"2026-04-07-OTP-A-ultramax-36.jpg": {},
168+
"2026-04-07-OTP-A-ultramax-37.jpg": {},
169+
"2026-04-07-OTP-A-ultramax-38.jpg": {},
170+
"2026-04-07-OTP-A-ultramax-39.jpg": {}
171+
}
172+
},
173+
"beach-club": {
174+
"name": "Beach to Club",
175+
"thumbnail": "2026-04-12-OTP-A-xp2-36.jpg",
176+
"film_stock": "Kodak Ultramax 400",
177+
"photos": {
178+
"2026-04-12-OTP-A-xp2-01.jpg": {},
179+
"2026-04-12-OTP-A-xp2-02.jpg": {},
180+
"2026-04-12-OTP-A-xp2-03.jpg": {},
181+
"2026-04-12-OTP-A-xp2-04.jpg": {},
182+
"2026-04-12-OTP-A-xp2-05.jpg": {},
183+
"2026-04-12-OTP-A-xp2-06.jpg": {},
184+
"2026-04-12-OTP-A-xp2-07.jpg": {},
185+
"2026-04-12-OTP-A-xp2-08.jpg": {},
186+
"2026-04-12-OTP-A-xp2-09.jpg": {},
187+
"2026-04-12-OTP-A-xp2-10.jpg": {},
188+
"2026-04-12-OTP-A-xp2-11.jpg": {},
189+
"2026-04-12-OTP-A-xp2-12.jpg": {},
190+
"2026-04-12-OTP-A-xp2-13.jpg": {},
191+
"2026-04-12-OTP-A-xp2-14.jpg": {},
192+
"2026-04-12-OTP-A-xp2-15.jpg": {},
193+
"2026-04-12-OTP-A-xp2-16.jpg": {},
194+
"2026-04-12-OTP-A-xp2-17.jpg": {},
195+
"2026-04-12-OTP-A-xp2-18.jpg": {},
196+
"2026-04-12-OTP-A-xp2-19.jpg": {},
197+
"2026-04-12-OTP-A-xp2-20.jpg": {},
198+
"2026-04-12-OTP-A-xp2-21.jpg": {},
199+
"2026-04-12-OTP-A-xp2-22.jpg": {},
200+
"2026-04-12-OTP-A-xp2-23.jpg": {},
201+
"2026-04-12-OTP-A-xp2-24.jpg": {},
202+
"2026-04-12-OTP-A-xp2-25.jpg": {},
203+
"2026-04-12-OTP-A-xp2-26.jpg": {},
204+
"2026-04-12-OTP-A-xp2-27.jpg": {},
205+
"2026-04-12-OTP-A-xp2-28.jpg": {},
206+
"2026-04-12-OTP-A-xp2-29.jpg": {},
207+
"2026-04-12-OTP-A-xp2-30.jpg": {},
208+
"2026-04-12-OTP-A-xp2-31.jpg": {},
209+
"2026-04-12-OTP-A-xp2-32.jpg": {},
210+
"2026-04-12-OTP-A-xp2-33.jpg": {},
211+
"2026-04-12-OTP-A-xp2-34.jpg": {},
212+
"2026-04-12-OTP-A-xp2-35.jpg": {},
213+
"2026-04-12-OTP-A-xp2-36.jpg": {},
214+
"2026-04-12-OTP-A-xp2-37.jpg": {},
215+
"2026-04-12-OTP-A-xp2-38.jpg": {},
216+
"2026-04-12-OTP-A-xp2-39.jpg": {}
217+
}
84218
}
85219
}

src/components/Footer.module.css

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,21 @@
1-
21
.Footer {
3-
display: flex;
4-
justify-content: space-between;
5-
align-items: center;
6-
gap: 20px;
2+
display: flex;
3+
justify-content: space-between;
4+
align-items: center;
5+
gap: 20px;
6+
}
77

8-
a {
9-
text-decoration: none;
10-
color: var(--text);
11-
font: 8px 'Raleway', sans-serif;
12-
}
8+
.Credits {
9+
font-size: 8px;
1310
}
1411

1512
.Links {
16-
display: flex;
17-
gap: 20px;
13+
display: flex;
14+
gap: 20px;
15+
align-items: center;
1816
}
1917

2018
.Link {
21-
color: var(--text);
22-
width: 100%;
23-
}
19+
color: var(--text);
20+
width: 100%;
21+
}

src/components/Footer.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
import { GitHub, Instagram, LinkedIn, ViewStream } from "@mui/icons-material";
22

33
import Container from "../containers/Container";
4+
import { ToggleThemeButton } from "./elements";
45

56
import styles from "./Footer.module.css";
67

7-
export default function Footer() {
8+
const Footer = () => {
89
return (
910
<Container id="footer" className={styles.Footer}>
10-
<a href="https://rexgreenway.github.io/">
11-
Website designed and maintained by Rex Greenway
12-
</a>
11+
<ToggleThemeButton />
12+
<p className={styles.Credits}>Designed and maintained by Rex Greenway</p>
1313
<div className={styles.Links}>
1414
<a href="https://links.rexgreenway.me">
1515
<ViewStream className={styles.Link} />
@@ -26,4 +26,6 @@ export default function Footer() {
2626
</div>
2727
</Container>
2828
);
29-
}
29+
};
30+
31+
export default Footer;

src/components/Project.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { useState } from "react";
22

33
import Card from "../containers/Card";
4-
import HorizontalLine from "./HorizontalLine";
4+
import { HorizontalLine } from "./elements";
55
import ReadMeModal from "./ReadMeModal";
66
import { ExternalLink, PagesLink } from "./CustomLinks";
77
import { Tags } from "./Tags";

src/components/Spotlight.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { CardWithImage } from "../containers/Card";
22
import Lattice from "../assets/PolyLatLib-Header.png";
33
import { ExternalLink } from "./CustomLinks";
4-
import HorizontalLine from "./HorizontalLine";
4+
import { HorizontalLine } from "./elements";
55

66
import styles from "./Spotlight.module.css";
77

File renamed without changes.
File renamed without changes.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
.Toggle {
2+
border: 1px solid var(--text);
3+
border-radius: 8px;
4+
padding: 5px;
5+
6+
display: flex;
7+
align-items: center;
8+
9+
cursor: pointer;
10+
}

0 commit comments

Comments
 (0)