Compare commits

..

9 Commits

Author SHA1 Message Date
abd982677f Relink all photos 2026-03-04 16:08:20 -08:00
68ac8a69db Link to home from title/logo 2026-03-04 12:40:57 -08:00
59390262b1 Fix titles on carousel template 2026-03-04 12:27:49 -08:00
157298daaa Fix overlapping text on mobile 2026-03-04 12:19:58 -08:00
757a002188 Update images 2026-03-04 12:10:05 -08:00
51845db643 Update navigation 2026-03-04 11:35:38 -08:00
753112ff46 Remove version from dockerfile 2026-03-04 11:03:14 -08:00
81bdd08f01 Uncommit build files 2026-03-04 11:00:32 -08:00
f0afaaf733 update content 2026-03-04 10:58:43 -08:00
62 changed files with 834 additions and 674 deletions

View File

@ -0,0 +1,12 @@
{
"permissions": {
"allow": [
"Bash(for f in \"C:/Users/runya/Documents/repositories/jakesphotos/content/collections\"/*/images.json)",
"Bash(do node -e \"JSON.parse\\(require\\(''fs''\\).readFileSync\\(''$f'',''utf8''\\)\\)\")",
"Bash(echo \"OK: $f\")",
"Bash(echo \"BAD: $f\")",
"Bash(done)",
"Bash(node -e \":*)"
]
}
}

4
.gitignore vendored
View File

@ -1 +1,3 @@
node_modules/
node_modules/
src/generated/
build/

View File

@ -22,6 +22,9 @@ FROM nginx:alpine
# Copy the build files from the previous stage
COPY --from=build /app/build /usr/share/nginx/html
# Use custom nginx config so client-side routes (e.g. /contact, /about) fall back to index.html
COPY nginx.conf /etc/nginx/conf.d/default.conf
# Expose port 80
EXPOSE 80

View File

@ -31,6 +31,98 @@ npm start
docker compose down && docker system prune -af && docker compose build && docker compose up -d && docker logs -f jakesphotos
```
## Page Templates
Pages are defined in `content/` as `index.md` files with YAML frontmatter. The `template` frontmatter key selects which template renders the page. All templates support a `title` key.
### `carousel`
Full-height image slideshow that auto-advances and loops infinitely. Shows 3 slides at a time. Pauses on hover; prev/next buttons and dot indicators are provided. Slides are defined as `##` sections — link the heading to make the slide clickable.
```markdown
---
template: carousel
title: Home
---
## [Landscapes](/collection/landscapes)
![](https://...)
## Nature
![](https://...)
```
### `collection`
Masonry photo grid with a lightbox viewer. Images are loaded from a sibling `images.json` array of URLs. Order is randomised on each page load.
```markdown
---
template: collection
title: Landscapes
---
```
`images.json` (same directory):
```json
["https://...", "https://..."]
```
### `menu`
Grid of cards, each linking to another page. Useful for a collections index. Each `##` section becomes a card; link the heading for navigation and include an optional image and description.
```markdown
---
template: menu
title: Collections
description: Browse my photo collections
---
## [Landscapes](/collection/landscapes)
![](https://...)
Mountains, coastal cliffs, and open skies.
```
### `default`
Simple prose page. Renders markdown body content with an optional profile image.
```markdown
---
template: default
title: About Me
profileImage: https://...
---
Markdown content here.
```
### `contact`
Contact page. Renders optional `email` and `instagram` frontmatter as links, followed by any markdown body content.
```markdown
---
template: contact
title: Contact
email: you@example.com
instagram: yourhandle
---
Optional extra markdown here.
```
### `homepage`
Alternating image/text sections. Each `##` section becomes a row with the image on one side and text on the other, alternating left/right.
```markdown
---
template: homepage
title: Welcome
subtitle: Optional subtitle
---
## Section Heading
![](https://...)
Paragraph text here.
```
## Notes on Generating Image Links
Getting image links from Immich is not straightforward.
@ -38,5 +130,5 @@ Procedure is to
1. Add a new image to the shared folder.
2. Generate a new share link for the folder.
3. Open the shared link, and for each picture right click > open image in new tab.
4. The generated URL should be of the form `https://images.whitney.rip/api/assets/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?size=preview&key=G4sdLdVrDhEpIFRcIJ9alvI6Re6_CmJGQ1VirR5Y3zjkA22Cr6vMVcviTYpTjq8PnuA&c=S6DnBWy90pmryXsnoQX9CQ3Y%2BBo%3D`
4. The generated URL should be of the form `https://images.whitney.rip/share/Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ/photos/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?size=preview&key=G4sdLdVrDhEpIFRcIJ9alvI6Re6_CmJGQ1VirR5Y3zjkA22Cr6vMVcviTYpTjq8PnuA&c=S6DnBWy90pmryXsnoQX9CQ3Y%2BBo%3D`
5. URL can be added to the images.js file.

View File

@ -1,17 +0,0 @@
{
"files": {
"main.css": "/static/css/main.39fd778a.css",
"main.js": "/static/js/main.fd3a90d8.js",
"static/js/488.9561f9b8.chunk.js": "/static/js/488.9561f9b8.chunk.js",
"static/media/instagram-light.png": "/static/media/instagram-light.2173f1e5eaee4fd6d94f.png",
"static/media/instagram-dark.png": "/static/media/instagram-dark.60be80b890ecf588309c.png",
"index.html": "/index.html",
"main.39fd778a.css.map": "/static/css/main.39fd778a.css.map",
"main.fd3a90d8.js.map": "/static/js/main.fd3a90d8.js.map",
"488.9561f9b8.chunk.js.map": "/static/js/488.9561f9b8.chunk.js.map"
},
"entrypoints": [
"static/css/main.39fd778a.css",
"static/js/main.fd3a90d8.js"
]
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -1 +0,0 @@
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="Web site created using create-react-app"/><link rel="apple-touch-icon" href="/logo192.png"/><link rel="manifest" href="/manifest.json"/><title>React App</title><script defer="defer" src="/static/js/main.fd3a90d8.js"></script><link href="/static/css/main.39fd778a.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

View File

@ -1,25 +0,0 @@
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "logo192.png",
"type": "image/png",
"sizes": "192x192"
},
{
"src": "logo512.png",
"type": "image/png",
"sizes": "512x512"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}

View File

@ -1,3 +0,0 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,86 +0,0 @@
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
/*!
* Masonry v4.2.2
* Cascading grid layout library
* https://masonry.desandro.com
* MIT License
* by David DeSandro
*/
/*!
* Outlayer v2.1.1
* the brains and guts of a layout library
* MIT license
*/
/*!
* getSize v2.0.3
* measure size of elements
* MIT license
*/
/**
* @license React
* react-dom-client.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* @license React
* react-dom.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* @license React
* react-jsx-runtime.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* @license React
* react.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* @license React
* scheduler.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* react-router v7.1.1
*
* Copyright (c) Remix Software Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE.md file in the root directory of this source tree.
*
* @license MIT
*/

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

View File

@ -1,8 +1,9 @@
{
"siteTitle": "Jake Runyan Photography",
"footerCopyright": "Jake Runyan",
"collectionRoot": "collections",
"nav": [
{ "label": "Gallery", "path": "/gallery" },
{ "label": "Collections", "path": "/collections" },
{ "label": "Contact", "path": "/contact" },
{ "label": "About", "path": "/about" }
],

View File

@ -1,11 +1,11 @@
---
template: default
title: About Me
profileImage: https://gallery.whitney.rip/api/v1/t/287329d8835b299400819437c9c2a2d192041159/2tdm690t/fit_4096
profileImage: https://images.whitney.rip/api/assets/8b48f2d9-0b0e-406a-8c2c-ac52028bd7ea/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=YwgKDQLKZ2%2BGh3mId4aWhxaAaFCX
---
I'm Jake, a small time photographer out of the Bay Area. I started shooting as a kid on my dad's old Canon EOS 60D, and now have graduated to owning my own gear. Having an artistic outlet has always been a force of balance for me, and with a background in video and photo editing, this has been a fun one.
I'm Jake, an amateur photographer from the Bay Area. I took my first photos as a kid using my dad's old Canon EOS 60D, and since have graduated to owning my own gear. Having an artistic outlet has always been important for me, and photography has been a fun way to remember and relive fun moments from my life.
My current setup is a Sony Alpha 6300 with a 27mm pancake lens. This budget setup was perfect for bringing my camera along on bike rides, as cycling is another hobby. You can find me on Youtube as Jake's West Coast. My current photography interests include capturing the beauty of the Bay Area and California coast on our bike rides, as well as moments in my everyday life.
My current setup is a Sony Alpha 6300 with a 27mm pancake lens. This budget setup was perfect for bringing my camera along on bike rides, as cycling is another hobby. (You can find me on Youtube as Jake's West Coast). My current photography interests include capturing the beauty of the Bay Area and California coast on our bike rides, as well as moments in my everyday life.
If you'd like to learn more about Jake, the person, you can find more at my instagram @runyanjake or on my personal website jake.runyan.dev.

View File

@ -0,0 +1,6 @@
[
"https://images.whitney.rip/api/assets/dfb53a18-05dc-4cbc-bdd2-7f8b6f5a4e8e/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=KNcNFYKbeHd1iIhPdkeIl4twuQiX",
"https://images.whitney.rip/api/assets/7d5803ea-20b9-448f-9659-6fb801f15c68/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=JAgKFYR4eIaPeJiHh5d4dGeAfAfI",
"https://images.whitney.rip/api/assets/2250e289-03ae-4ee4-a63a-3ba29db99dd0/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=3sYJCoKGd4hwd5h2inCZCKg%3D",
"https://images.whitney.rip/share/Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ/photos/dfb53a18-05dc-4cbc-bdd2-7f8b6f5a4e8e"
]

View File

@ -0,0 +1,4 @@
---
template: collection
title: Action
---

View File

@ -0,0 +1,5 @@
---
template: collection-index
title: Collections
description: Browse my photo collections
---

View File

@ -0,0 +1,15 @@
[
"https://images.whitney.rip/api/assets/4db2ea6d-8998-40df-bf05-fc27beeb2085/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=3QcGFYJ5g2mfdmhClmd3mKeSYAUn",
"https://images.whitney.rip/api/assets/f7bfc5b1-6ef6-42ce-b4a2-237939b03ae9/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=k%2FcNFYKFd4efh4h2eGd3hodwZghn",
"https://images.whitney.rip/api/assets/30273029-cba9-45a6-aa7c-3af27d0bd835/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=1vcRHYJneHifd3d3eFh4h4eAdgd4",
"https://images.whitney.rip/api/assets/fe1b66b4-4f98-43a3-bb26-6d4661d5ffe2/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=FAgWFYRpd3ePh3eGiFiHeGmFgGYI",
"https://images.whitney.rip/api/assets/d88e4a71-d645-48de-9b22-aad8f1ae3bde/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=n%2FcNHYJ4iHd%2FeIeIh3eHdnmAmAaI",
"https://images.whitney.rip/api/assets/3a89717a-b0b9-42a6-ab34-0f4dc3d90987/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=3fcVFYB5mXh%2FiIiJd2Z4iFuQiBLP",
"https://images.whitney.rip/api/assets/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=RAgGDYCPSUOCendQh2oiqI9x8SgX",
"https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2vcJBYAIeHdeeId8h8d4hoCxAVZb",
"https://images.whitney.rip/api/assets/4d759c78-64c8-4607-9b61-7d1f536fe98f/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=HegJHYJ2eHifeIhleKh4iYWAVweI",
"https://images.whitney.rip/api/assets/a837364d-ed8a-44cf-a8db-8db320bf81e6/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=G%2FgFFYJXeImfeHh5ipiHfHWQcFUI",
"https://images.whitney.rip/api/assets/038e8d18-87cd-49f4-8e53-4c36a5f76cfb/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=5fcNDYB4h4h%2FiHd4iGiJd2aAWAWo",
"https://images.whitney.rip/api/assets/a0193b43-937a-4b3e-8411-e58985902fd3/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=VvgJHQR4eI94iHiIiHeIiHdwdAdX",
"https://images.whitney.rip/api/assets/5f102243-0652-42bb-94da-266adc1927dc/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=3fcRBQCIeI94F3end3dnmGeAK%2BYK"
]

View File

@ -1,4 +1,4 @@
---
template: gallery
template: collection
title: Landscapes
---

View File

@ -0,0 +1,18 @@
[
"https://images.whitney.rip/api/assets/fc6c3d20-2521-4d31-9f31-19476ad30a65/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=J%2FgNBYDWZnaPhod2iIh3eApgxvkD",
"https://images.whitney.rip/api/assets/15dd24ba-e2ae-4093-a098-988aac86e1e0/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=7vcFBYDGVadvh3hdhoiHh55PPPnJ",
"https://images.whitney.rip/api/assets/1a8dd56a-3433-40ab-8619-f385560ee807/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=GvgJHYRCZ2lidoefd8Z3dZeQgAc4",
"https://images.whitney.rip/api/assets/0beaaf50-cb2c-4d84-b099-e1af24f7d2e3/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=lxgKDYB1ZmZZiZhweWaXhyBn0fZ%2B",
"https://images.whitney.rip/api/assets/01d40f57-dbf6-4c9d-8fc1-0ac22dfe17e5/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=UQgGDYKwNlqIWGaBhlp4iIEvD6rT",
"https://images.whitney.rip/api/assets/44f3ce06-3b34-42d2-9396-424ff95ba672/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=WvgJDQBJhoR896h3moqId%2Fl1kgbG",
"https://images.whitney.rip/api/assets/2c55949d-7a2d-4bde-a87e-107ce352bc60/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2PgFDYCllHkwd3hQiOiZfmhFIG9A",
"https://images.whitney.rip/api/assets/0ff98add-0a3c-408b-af91-6320df62910f/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=GfgNHYJVeHefd3d6h0iIh3aAVQeJ",
"https://images.whitney.rip/api/assets/ce5eba3e-c444-4a20-a88a-92bfe56c6891/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=KwgOHQSZeIx4%2BHdHh4O4iHiAmAeY",
"https://images.whitney.rip/api/assets/8e254f41-7b14-48b3-ba98-a96fb9c05129/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=1OcJDQJmh194B3iYeHloeHaAewfp",
"https://images.whitney.rip/api/assets/1f877a0c-8e36-4751-b50a-5ea12c73aefc/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=VugJDYA4eKZfhnmMiKiGhxlfhGf8",
"https://images.whitney.rip/api/assets/1979efcd-ba01-4194-b0f7-8e64a996c1cc/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=1%2FcJJYQpaFaPh4doZ3eGlndwdgdo",
"https://images.whitney.rip/api/assets/4d045446-e402-475d-8b85-8cbb04afc148/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=IQgSDQCVh4%2BHl2hoeImIWFtwxBQH",
"https://images.whitney.rip/api/assets/30b56b85-3225-44df-903d-5ba14e07927c/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=3%2BcVHYKHeHh%2Fd4d3d1iIiHZwOBcH",
"https://images.whitney.rip/api/assets/92063a5c-0c50-46c1-9bb3-8c294305b5a7/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=HQgaDYCQaHh6lniHd4iHhx%2BRWPYJ",
"https://images.whitney.rip/api/assets/3017faba-56bb-4873-8a6a-822231545c1b/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=H9cRFQKJiI%2BHiIhHiHaHl3iAkggp"
]

View File

@ -0,0 +1,4 @@
---
template: collection
title: Miscellaneous
---

View File

@ -0,0 +1,18 @@
[
"https://images.whitney.rip/api/assets/ec92f32f-0c08-4317-b8e2-90c53c2e6416/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=HggGBYAFZnhud3ZhdnhoaTRwcRn6",
"https://images.whitney.rip/api/assets/8a750cc3-7bef-4bc6-9727-83151dead578/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=GOoFDYBpdUk%2Fh4eGWZZjWB5rgPu3",
"https://images.whitney.rip/api/assets/40cb4952-0b8a-4500-a692-a20acbe01ff4/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=FvkFFYIrVGRDq4qFZwaXhmiOoAjH",
"https://images.whitney.rip/api/assets/4e440673-7294-48ac-99a4-05cc3fb07cd2/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=legFDYIyZlqPlYhzemaYaEBvBcY3",
"https://images.whitney.rip/api/assets/88cd4904-2ab1-4c60-b225-58d73945d724/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=lvgFDYCKlphvZ4iFl5hpdQuI2Jf4",
"https://images.whitney.rip/api/assets/d33762bc-1204-4f33-8e6f-2ea5bde72f1a/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=lfgBDYD8t4W%2FRql5izS2eKZ%2FzDAJ",
"https://images.whitney.rip/api/assets/fe4c9bf0-334b-40fb-9a44-8b1984e2818a/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=1vcJJYSGh4Zvd4d6aHeJh5eAdQlX",
"https://images.whitney.rip/api/assets/993736e1-a3ae-4ec5-8c67-c25c4c734f23/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=UggKBYAQh3prd3eEeJd3h49SBsRU",
"https://images.whitney.rip/api/assets/994408ea-6f04-473f-84ea-de3c77265298/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=UekFDQAJiINchlaIiXRZV3xYQIf7",
"https://images.whitney.rip/api/assets/d496de3c-bf3a-4b49-a34a-96c998c288a0/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=D%2FgFBYAKJKdRvIh2ZqhqYjP784iR",
"https://images.whitney.rip/api/assets/fd4b8886-7a55-478e-8bc8-6cba70fe9cd2/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=F%2BgRJQBFeH92eIhniId3eJmQ9grJ",
"https://images.whitney.rip/api/assets/abefba8f-c77e-46e7-9f62-9a3da5ec8128/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=l%2BgFDQBXWLtXBWaGd4RnZlmKMArJ",
"https://images.whitney.rip/api/assets/d9fc53c6-4645-4451-91d5-94927ff638ea/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=EvgJDQAXlp9nV7jGiZ2WmbBTkaQC",
"https://images.whitney.rip/api/assets/b66557e8-aa4a-4f0b-b252-ee0ece28b0b5/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=EggGDYI3Z3Z6qndweoZ2eIdFgIEH",
"https://images.whitney.rip/api/assets/0eef2205-2260-4307-80fa-520aeb139558/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=kjgKDYJpqml%2Fl4mGiHeIdiZKUPIT",
"https://images.whitney.rip/api/assets/0fe37f58-c2c6-4007-ae6d-0230ab4a7507/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=T9gFDAIGZ8Yml3domGdmX4Rj%2Bg%3D%3D"
]

View File

@ -0,0 +1,4 @@
---
template: collection
title: Places
---

View File

@ -0,0 +1,7 @@
[
"https://images.whitney.rip/api/assets/bfa43b2b-4aa1-4792-ab2f-aff1e226cdf0/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=TQgKFYJ2eWZ%2FiHeTeXiIe2VvVcYH",
"https://images.whitney.rip/api/assets/91d11918-7471-4e81-b101-23511e14f45d/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=UOcNJQRml4%2BIZ5l4eXWHh5iAlgho",
"https://images.whitney.rip/api/assets/787274d8-d94b-479c-9a11-b60f3ca3e640/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2wcOFYJjeHiZdndwiLd3hoSQFwh6",
"https://images.whitney.rip/api/assets/87cd7f35-f4c5-4a1e-a56d-c6d8e9d082da/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=mfcNFYJTWGl9hIevd6Z3l5aCcAc4",
"https://images.whitney.rip/api/assets/f4fcf415-7eb1-4131-8ef8-b0456aa31c62/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=GAgODYIJd4eIdXePdXd4ZohwhQZn"
]

View File

@ -0,0 +1,4 @@
---
template: collection
title: People
---

View File

@ -0,0 +1,8 @@
[
"https://images.whitney.rip/api/assets/8beaf017-029f-4827-a3c2-066f9453e271/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=GwgKDIJId1efiGiIiIj2dXuM9w%3D%3D",
"https://images.whitney.rip/api/assets/2fb5267d-7b71-4612-ad9c-4be961704a67/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=W%2BcRHYR8eHd%2Fh4doiHeIh3aQRgd6",
"https://images.whitney.rip/api/assets/4d0fbaa8-90c2-4a46-9b32-d463fac24ba1/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=mRgGFYJzR2yPdoZaeKZ6lY6U4DgI",
"https://images.whitney.rip/api/assets/a00d29e7-7c50-46ba-9c69-d74d5d4ba04d/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=mfcJDYBJd3dvh4d0h3d5eIaAagSo",
"https://images.whitney.rip/api/assets/b1adae05-fcfe-43c1-908b-b17388dc05cc/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2QcOBQCYaI94KHeHZ4iXVymAlmQH",
"https://images.whitney.rip/api/assets/3a47f867-70ee-4bba-b001-c6fc12ed8476/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2AcOFQRod4%2BGp3doh3d4d4ZgcAcF"
]

View File

@ -0,0 +1,4 @@
---
template: collection
title: Places
---

View File

@ -0,0 +1,7 @@
[
"https://images.whitney.rip/api/assets/3082f0af-fb30-4e04-baae-5b47d310e380/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=CvgFBQBZeHeIB4dniHeIeJedcOr7",
"https://images.whitney.rip/api/assets/e29ce2a5-987c-4453-81f2-b2e7b161e7d2/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=TAgGDQBNV2mXCIZXeGWIaFSPU8MJ",
"https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=kBgKDYKApXdyiIjGl1aXeJB%2BA%2Fc3",
"https://images.whitney.rip/api/assets/d84b166b-56fc-48cb-b932-7847d70ade04/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=0ygKFYIDJ3l%2BhoiliYd3dEh%2FiPKG",
"https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=HggODYJRmYpfhpmLd2iJhnuQdgeI"
]

View File

@ -1,4 +1,4 @@
---
template: gallery
template: collection
title: Portraits
---

View File

@ -0,0 +1,22 @@
[
"https://images.whitney.rip/api/assets/e6934d1a-543c-4ed8-9c29-a94e915f9d94/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2TgGDYCHWTTjlXlgiJmobXTHEDgO",
"https://images.whitney.rip/api/assets/7635d87d-5ed6-4342-9cc2-0c6d0e0a1425/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2DkCDYKKqWM8iOegekmHNgNJVIBV",
"https://images.whitney.rip/api/assets/2fe3919e-00d4-4afc-8140-a81dbf266c82/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=lgoGDYJHDyFuq0k2aKV6Rg%2BboviG",
"https://images.whitney.rip/api/assets/3afd7320-9719-4755-85b8-8a87163086fe/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=GecJBQCIiJ%2BIl3mIeHiIiIiApQyP",
"https://images.whitney.rip/api/assets/27128ac2-6c4a-4e15-98e5-1dff32f5fa03/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=VigGDYL3ZHV5lYeHZ3h2av2l23%2B5",
"https://images.whitney.rip/api/assets/dd59bec7-d922-4a53-af12-3f252c109d0d/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=GggGBQA0WIuVCVeHd4Z5VqCMFIgH",
"https://images.whitney.rip/api/assets/214921e1-7b75-4059-ad53-1c1062f6df45/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=XucFBACG94VmaYqXh3iPUvRYRg%3D%3D",
"https://images.whitney.rip/api/assets/185d198a-a2d3-40f1-b508-11d03edf8162/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=lvkJFICGd4d%2Fh3d7h3hmf3j6Nw%3D%3D",
"https://images.whitney.rip/api/assets/bb8cf2fc-a745-4ff9-87a3-51a5407de9a3/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=F%2FgFBYAER2hnhYeTh4Z4hqxQ9%2Byw",
"https://images.whitney.rip/api/assets/ddf6d29e-81f4-4c3b-8277-450a88b0d75f/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=F%2FgFBQBHeHuHCIh4eHeHeCxweSUI",
"https://images.whitney.rip/api/assets/8f6df2db-6a63-446b-9c00-5830ff91ea5c/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=VPgFBQI4VYa4CIZ4V2hmqTbf%2FLQY",
"https://images.whitney.rip/api/assets/00d4ad2e-d549-45ac-9a7c-d9f97cc2a0ba/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=GPgFBYAFVmhqdoeFdqiGh3DGqOb5",
"https://images.whitney.rip/api/assets/97e8aa93-39fb-42d9-b1e0-0536eb81e4ba/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2FkGBYAoaEqfh3hydod4dwHMEaA6",
"https://images.whitney.rip/api/assets/96c2e801-ca3e-4f7b-832c-a2ff2ac7ae40/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2vcJBQhge4t3WHh3d4Z3d4t%2FCniH",
"https://images.whitney.rip/api/assets/da24e8f5-3fd4-494e-9e41-c0091a0fe467/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=E%2FgFBQAp%2BJVmh2hneHcapwKcgK%2BZ",
"https://images.whitney.rip/api/assets/a4462903-154f-4ed1-b818-f6afa3dd9518/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=VRgKDIJ1d3d%2Fd3iEiKR6cKkHdw%3D%3D",
"https://images.whitney.rip/api/assets/bd04ba66-93ff-4fb6-bf25-9d8058f045d5/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=WvgJDYJ3eIiPh4ieh1d4dXVwcAfH",
"https://images.whitney.rip/api/assets/91579dd9-93a0-4cd4-8a36-6d5b02b25281/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=WBgCBgBsh8eGeXePiCSKPWRLXICgZwg%3D",
"https://images.whitney.rip/api/assets/9b4c6b9c-02d4-4d15-9c0a-b6a027440e11/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=VggCBQBjiPpVdWGqy6CBpEb1WGR%2F",
"https://images.whitney.rip/api/assets/ff9a0b2d-fdff-4780-99f0-9ae475bc29a9/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=2vcFBQBYd3aHCIhoh4Z4d3Z%2FCrV1"
]

View File

@ -1,4 +1,4 @@
---
template: gallery
template: collection
title: Textures
---

View File

@ -1,21 +0,0 @@
---
template: menu
title: Gallery
description: Browse my photo collections
---
## [Landscapes](/gallery/landscapes)
![](https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)
Mountains, coastal cliffs, and open skies across California and the Bay Area.
## [Portraits](/gallery/portraits)
![](https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)
Candid moments and faces from everyday life.
## [Textures](/gallery/textures)
![](https://images.whitney.rip/api/assets/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)
Abstract surfaces and patterns found in the world around us.
## [Nature](/gallery/nature)
![](https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)
Flora, fauna, and natural forms.

View File

@ -1,22 +0,0 @@
[
"https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1114e4b3-99a7-4cdc-9ce2-ad52d1a0046f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1ce61b59-98a7-401c-9840-72dc51822494/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2250e289-03ae-4ee4-a63a-3ba29db99dd0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ec93e5f8-ca2e-4078-8190-d884435513eb/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/40cb4952-0b8a-4500-a692-a20acbe01ff4/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2fe3919e-00d4-4afc-8140-a81dbf266c82/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/3a89717a-b0b9-42a6-ab34-0f4dc3d90987/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8beaf017-029f-4827-a3c2-066f9453e271/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/87cd7f35-f4c5-4a1e-a56d-c6d8e9d082da/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2c55949d-7a2d-4bde-a87e-107ce352bc60/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/44f3ce06-3b34-42d2-9396-424ff95ba672/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d88e4a71-d645-48de-9b22-aad8f1ae3bde/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d84b166b-56fc-48cb-b932-7847d70ade04/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/01d40f57-dbf6-4c9d-8fc1-0ac22dfe17e5/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e7055bf2-626a-47a5-9526-15b2de26249e/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/7635d87d-5ed6-4342-9cc2-0c6d0e0a1425/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0beaaf50-cb2c-4d84-b099-e1af24f7d2e3/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/90052323-c4df-4820-8fe8-7658424991b8/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4749cdd5-aa5a-4911-9567-f3f5afca6ecc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]

View File

@ -1,21 +0,0 @@
[
"https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/72d0e30d-c27c-4d8e-8977-0ae438178324/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d496de3c-bf3a-4b49-a34a-96c998c288a0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fd4b8886-7a55-478e-8bc8-6cba70fe9cd2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/30b56b85-3225-44df-903d-5ba14e07927c/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/185d198a-a2d3-40f1-b508-11d03edf8162/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/92063a5c-0c50-46c1-9bb3-8c294305b5a7/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2fb5267d-7b71-4612-ad9c-4be961704a67/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4d0fbaa8-90c2-4a46-9b32-d463fac24ba1/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/bb8cf2fc-a745-4ff9-87a3-51a5407de9a3/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/abefba8f-c77e-46e7-9f62-9a3da5ec8128/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d9fc53c6-4645-4451-91d5-94927ff638ea/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ddf6d29e-81f4-4c3b-8277-450a88b0d75f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/b66557e8-aa4a-4f0b-b252-ee0ece28b0b5/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8f6df2db-6a63-446b-9c00-5830ff91ea5c/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/00d4ad2e-d549-45ac-9a7c-d9f97cc2a0ba/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/97e8aa93-39fb-42d9-b1e0-0536eb81e4ba/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0eef2205-2260-4307-80fa-520aeb139558/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0fe37f58-c2c6-4007-ae6d-0230ab4a7507/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]

View File

@ -1,4 +0,0 @@
---
template: gallery
title: Nature
---

View File

@ -1,22 +0,0 @@
[
"https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1a8dd56a-3433-40ab-8619-f385560ee807/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fe1b66b4-4f98-43a3-bb26-6d4661d5ffe2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/787274d8-d94b-479c-9a11-b60f3ca3e640/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/91d11918-7471-4e81-b101-23511e14f45d/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/bfa43b2b-4aa1-4792-ab2f-aff1e226cdf0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/30273029-cba9-45a6-aa7c-3af27d0bd835/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f7bfc5b1-6ef6-42ce-b4a2-237939b03ae9/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e29ce2a5-987c-4453-81f2-b2e7b161e7d2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/3082f0af-fb30-4e04-baae-5b47d310e380/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/15dd24ba-e2ae-4093-a098-988aac86e1e0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fc6c3d20-2521-4d31-9f31-19476ad30a65/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8a750cc3-7bef-4bc6-9727-83151dead578/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4db2ea6d-8998-40df-bf05-fc27beeb2085/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ec92f32f-0c08-4317-b8e2-90c53c2e6416/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/7d5803ea-20b9-448f-9659-6fb801f15c68/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/dfb53a18-05dc-4cbc-bdd2-7f8b6f5a4e8e/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e6934d1a-543c-4ed8-9c29-a94e915f9d94/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0e88d871-fc8e-4ac3-a96a-920fce3cc546/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/379a3b92-ff9b-4455-afe7-c2c6a8a270cd/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]

View File

@ -1,22 +0,0 @@
[
"https://images.whitney.rip/api/assets/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4d759c78-64c8-4607-9b61-7d1f536fe98f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0ff98add-0a3c-408b-af91-6320df62910f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ce5eba3e-c444-4a20-a88a-92bfe56c6891/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/a837364d-ed8a-44cf-a8db-8db320bf81e6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8e254f41-7b14-48b3-ba98-a96fb9c05129/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1f877a0c-8e36-4751-b50a-5ea12c73aefc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1979efcd-ba01-4194-b0f7-8e64a996c1cc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f4fcf415-7eb1-4131-8ef8-b0456aa31c62/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4e440673-7294-48ac-99a4-05cc3fb07cd2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/62baec73-487d-4a72-bdc4-7c168cf6f82a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/88cd4904-2ab1-4c60-b225-58d73945d724/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/dd59bec7-d922-4a53-af12-3f252c109d0d/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d33762bc-1204-4f33-8e6f-2ea5bde72f1a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fe4c9bf0-334b-40fb-9a44-8b1984e2818a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/993736e1-a3ae-4ec5-8c67-c25c4c734f23/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/038e8d18-87cd-49f4-8e53-4c36a5f76cfb/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/994408ea-6f04-473f-84ea-de3c77265298/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ddaf8248-7cdf-4e39-9639-d2826dc9d038/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/214921e1-7b75-4059-ad53-1c1062f6df45/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]

View File

@ -1,81 +0,0 @@
[
"https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1114e4b3-99a7-4cdc-9ce2-ad52d1a0046f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1ce61b59-98a7-401c-9840-72dc51822494/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2250e289-03ae-4ee4-a63a-3ba29db99dd0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ec93e5f8-ca2e-4078-8190-d884435513eb/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/40cb4952-0b8a-4500-a692-a20acbe01ff4/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2fe3919e-00d4-4afc-8140-a81dbf266c82/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/3a89717a-b0b9-42a6-ab34-0f4dc3d90987/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8beaf017-029f-4827-a3c2-066f9453e271/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/87cd7f35-f4c5-4a1e-a56d-c6d8e9d082da/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2c55949d-7a2d-4bde-a87e-107ce352bc60/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/44f3ce06-3b34-42d2-9396-424ff95ba672/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d88e4a71-d645-48de-9b22-aad8f1ae3bde/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d84b166b-56fc-48cb-b932-7847d70ade04/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/01d40f57-dbf6-4c9d-8fc1-0ac22dfe17e5/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e7055bf2-626a-47a5-9526-15b2de26249e/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/7635d87d-5ed6-4342-9cc2-0c6d0e0a1425/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0beaaf50-cb2c-4d84-b099-e1af24f7d2e3/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/90052323-c4df-4820-8fe8-7658424991b8/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4749cdd5-aa5a-4911-9567-f3f5afca6ecc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1a8dd56a-3433-40ab-8619-f385560ee807/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fe1b66b4-4f98-43a3-bb26-6d4661d5ffe2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/787274d8-d94b-479c-9a11-b60f3ca3e640/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/91d11918-7471-4e81-b101-23511e14f45d/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/bfa43b2b-4aa1-4792-ab2f-aff1e226cdf0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/30273029-cba9-45a6-aa7c-3af27d0bd835/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f7bfc5b1-6ef6-42ce-b4a2-237939b03ae9/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e29ce2a5-987c-4453-81f2-b2e7b161e7d2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/3082f0af-fb30-4e04-baae-5b47d310e380/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/15dd24ba-e2ae-4093-a098-988aac86e1e0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fc6c3d20-2521-4d31-9f31-19476ad30a65/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8a750cc3-7bef-4bc6-9727-83151dead578/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4db2ea6d-8998-40df-bf05-fc27beeb2085/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ec92f32f-0c08-4317-b8e2-90c53c2e6416/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/7d5803ea-20b9-448f-9659-6fb801f15c68/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/dfb53a18-05dc-4cbc-bdd2-7f8b6f5a4e8e/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e6934d1a-543c-4ed8-9c29-a94e915f9d94/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0e88d871-fc8e-4ac3-a96a-920fce3cc546/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/379a3b92-ff9b-4455-afe7-c2c6a8a270cd/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4d759c78-64c8-4607-9b61-7d1f536fe98f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0ff98add-0a3c-408b-af91-6320df62910f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ce5eba3e-c444-4a20-a88a-92bfe56c6891/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/a837364d-ed8a-44cf-a8db-8db320bf81e6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8e254f41-7b14-48b3-ba98-a96fb9c05129/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1f877a0c-8e36-4751-b50a-5ea12c73aefc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1979efcd-ba01-4194-b0f7-8e64a996c1cc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f4fcf415-7eb1-4131-8ef8-b0456aa31c62/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4e440673-7294-48ac-99a4-05cc3fb07cd2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/62baec73-487d-4a72-bdc4-7c168cf6f82a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/88cd4904-2ab1-4c60-b225-58d73945d724/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/dd59bec7-d922-4a53-af12-3f252c109d0d/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d33762bc-1204-4f33-8e6f-2ea5bde72f1a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fe4c9bf0-334b-40fb-9a44-8b1984e2818a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/993736e1-a3ae-4ec5-8c67-c25c4c734f23/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/038e8d18-87cd-49f4-8e53-4c36a5f76cfb/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/994408ea-6f04-473f-84ea-de3c77265298/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ddaf8248-7cdf-4e39-9639-d2826dc9d038/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/214921e1-7b75-4059-ad53-1c1062f6df45/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/72d0e30d-c27c-4d8e-8977-0ae438178324/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d496de3c-bf3a-4b49-a34a-96c998c288a0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fd4b8886-7a55-478e-8bc8-6cba70fe9cd2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/30b56b85-3225-44df-903d-5ba14e07927c/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/185d198a-a2d3-40f1-b508-11d03edf8162/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/92063a5c-0c50-46c1-9bb3-8c294305b5a7/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2fb5267d-7b71-4612-ad9c-4be961704a67/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4d0fbaa8-90c2-4a46-9b32-d463fac24ba1/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/bb8cf2fc-a745-4ff9-87a3-51a5407de9a3/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/abefba8f-c77e-46e7-9f62-9a3da5ec8128/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d9fc53c6-4645-4451-91d5-94927ff638ea/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ddf6d29e-81f4-4c3b-8277-450a88b0d75f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/b66557e8-aa4a-4f0b-b252-ee0ece28b0b5/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8f6df2db-6a63-446b-9c00-5830ff91ea5c/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/00d4ad2e-d549-45ac-9a7c-d9f97cc2a0ba/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/97e8aa93-39fb-42d9-b1e0-0536eb81e4ba/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0eef2205-2260-4307-80fa-520aeb139558/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0fe37f58-c2c6-4007-ae6d-0230ab4a7507/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]

View File

@ -1,17 +1,28 @@
---
template: homepage
template: carousel
title: Jake Runyan Photography
subtitle: Bay Area · Cycling · Life
---
## Bay Area Life
![](https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)
I'm Jake, a small-time photographer out of the Bay Area. I shoot the world around me — the coastlines, the hills, the everyday scenes that make this place feel like home.
## [Action](/collections/action)
![](https://images.whitney.rip/api/assets/7d5803ea-20b9-448f-9659-6fb801f15c68/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=JAgKFYR4eIaPeJiHh5d4dGeAfAfI)
## On Two Wheels
![](https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)
My Sony Alpha 6300 comes along on every ride. There's something about cycling that puts you right in the middle of a scene — no glass between you and the world.
## [Landscapes](/collections/landscapes)
![](https://images.whitney.rip/api/assets/a0193b43-937a-4b3e-8411-e58985902fd3/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=VvgJHQR4eI94iHiIiHeIiHdwdAdX)
## Everyday Moments
![](https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)
Beyond landscapes, it's the small details that catch my eye — textures, light, the quiet moments between everything else.
## [Nature](/collections/nature)
![](https://images.whitney.rip/api/assets/d9fc53c6-4645-4451-91d5-94927ff638ea/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=EvgJDQAXlp9nV7jGiZ2WmbBTkaQC)
## [Textures](/collections/textures)
![](https://images.whitney.rip/api/assets/ddf6d29e-81f4-4c3b-8277-450a88b0d75f/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=F%2FgFBQBHeHuHCIh4eHeHeCxweSUI)
## [People](/collections/people)
![](https://images.whitney.rip/api/assets/87cd7f35-f4c5-4a1e-a56d-c6d8e9d082da/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=mfcNFYJTWGl9hIevd6Z3l5aCcAc4)
## [Places](/collections/places)
![](https://images.whitney.rip/api/assets/a00d29e7-7c50-46ba-9c69-d74d5d4ba04d/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=mfcJDYBJd3dvh4d0h3d5eIaAagSo)
## [Portraits](/collections/portraits)
![](https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=HggODYJRmYpfhpmLd2iJhnuQdgeI)
## [Other Photos](/collections/misc)
![](https://images.whitney.rip/api/assets/ce5eba3e-c444-4a20-a88a-92bfe56c6891/thumbnail?key=Tr5UMHSuNxQ7C5YgyE10L3J6FaKltllrUjdLttGDnId_MTBF4riEcROs7NqXmC6HJYQ&size=preview&c=KwgOHQSZeIx4%2BHdHh4O4iHiAmAeY)

View File

@ -1,5 +1,3 @@
version: '2.4'
networks:
traefik:
external: true

10
nginx.conf Normal file
View File

@ -0,0 +1,10 @@
server {
listen 80;
server_name _;
root /usr/share/nginx/html;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
}

32
package-lock.json generated
View File

@ -84,6 +84,7 @@
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz",
"integrity": "sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==",
"license": "MIT",
"peer": true,
"dependencies": {
"@ampproject/remapping": "^2.2.0",
"@babel/code-frame": "^7.26.0",
@ -724,6 +725,7 @@
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.26.0.tgz",
"integrity": "sha512-B+O2DnPc0iG+YXFqOxv2WNuNU97ToWjOomUQ78DouOENWUaM5sVrmet9mcomUGQFwpJd//gvUagXBSdzO1fRKg==",
"license": "MIT",
"peer": true,
"dependencies": {
"@babel/helper-plugin-utils": "^7.25.9"
},
@ -1588,6 +1590,7 @@
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.25.9.tgz",
"integrity": "sha512-s5XwpQYCqGerXl+Pu6VDL3x0j2d82eiV77UJ8a2mDHAW7j9SWRqQ2y1fNo1Z74CdcYipl5Z41zvjj4Nfzq36rw==",
"license": "MIT",
"peer": true,
"dependencies": {
"@babel/helper-annotate-as-pure": "^7.25.9",
"@babel/helper-module-imports": "^7.25.9",
@ -3472,7 +3475,6 @@
"integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
"dev": true,
"license": "Apache-2.0",
"peer": true,
"dependencies": {
"dequal": "^2.0.3"
}
@ -3482,8 +3484,7 @@
"resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz",
"integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==",
"dev": true,
"license": "MIT",
"peer": true
"license": "MIT"
},
"node_modules/@testing-library/jest-dom": {
"version": "6.9.1",
@ -3570,8 +3571,7 @@
"resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz",
"integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==",
"dev": true,
"license": "MIT",
"peer": true
"license": "MIT"
},
"node_modules/@types/babel__core": {
"version": "7.20.5",
@ -3999,6 +3999,7 @@
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz",
"integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==",
"license": "MIT",
"peer": true,
"dependencies": {
"@eslint-community/regexpp": "^4.4.0",
"@typescript-eslint/scope-manager": "5.62.0",
@ -4052,6 +4053,7 @@
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz",
"integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==",
"license": "BSD-2-Clause",
"peer": true,
"dependencies": {
"@typescript-eslint/scope-manager": "5.62.0",
"@typescript-eslint/types": "5.62.0",
@ -4421,6 +4423,7 @@
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz",
"integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==",
"license": "MIT",
"peer": true,
"bin": {
"acorn": "bin/acorn"
},
@ -4507,6 +4510,7 @@
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.1",
"fast-json-stable-stringify": "^2.0.0",
@ -5373,6 +5377,7 @@
}
],
"license": "MIT",
"peer": true,
"dependencies": {
"caniuse-lite": "^1.0.30001688",
"electron-to-chromium": "^1.5.73",
@ -6483,8 +6488,7 @@
"version": "3.2.3",
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz",
"integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==",
"license": "MIT",
"peer": true
"license": "MIT"
},
"node_modules/damerau-levenshtein": {
"version": "1.0.8",
@ -7310,6 +7314,7 @@
"integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==",
"deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.",
"license": "MIT",
"peer": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.6.1",
@ -10186,6 +10191,7 @@
"resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz",
"integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==",
"license": "MIT",
"peer": true,
"dependencies": {
"@jest/core": "^27.5.1",
"import-local": "^3.0.2",
@ -11483,7 +11489,6 @@
"integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==",
"dev": true,
"license": "MIT",
"peer": true,
"bin": {
"lz-string": "bin/bin.js"
}
@ -13098,6 +13103,7 @@
}
],
"license": "MIT",
"peer": true,
"dependencies": {
"nanoid": "^3.3.7",
"picocolors": "^1.1.1",
@ -14285,6 +14291,7 @@
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
"integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
"license": "MIT",
"peer": true,
"dependencies": {
"cssesc": "^3.0.0",
"util-deprecate": "^1.0.2"
@ -14654,6 +14661,7 @@
"resolved": "https://registry.npmjs.org/react/-/react-19.0.0.tgz",
"integrity": "sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==",
"license": "MIT",
"peer": true,
"engines": {
"node": ">=0.10.0"
}
@ -14791,6 +14799,7 @@
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.0.0.tgz",
"integrity": "sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==",
"license": "MIT",
"peer": true,
"dependencies": {
"scheduler": "^0.25.0"
},
@ -14872,6 +14881,7 @@
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz",
"integrity": "sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==",
"license": "MIT",
"peer": true,
"engines": {
"node": ">=0.10.0"
}
@ -15420,6 +15430,7 @@
"resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.2.tgz",
"integrity": "sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==",
"license": "MIT",
"peer": true,
"bin": {
"rollup": "dist/bin/rollup"
},
@ -15646,6 +15657,7 @@
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz",
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",
@ -17321,6 +17333,7 @@
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
"integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
"license": "(MIT OR CC0-1.0)",
"peer": true,
"engines": {
"node": ">=10"
},
@ -17877,6 +17890,7 @@
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz",
"integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==",
"license": "MIT",
"peer": true,
"dependencies": {
"@types/eslint-scope": "^3.7.7",
"@types/estree": "^1.0.6",
@ -17946,6 +17960,7 @@
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz",
"integrity": "sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==",
"license": "MIT",
"peer": true,
"dependencies": {
"@types/bonjour": "^3.5.9",
"@types/connect-history-api-fallback": "^1.3.5",
@ -18375,6 +18390,7 @@
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz",
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",

View File

@ -81,6 +81,28 @@ function walkContent(dirPath, slug) {
walkContent(CONTENT_DIR, '');
// --- Auto-discover collections ---
// If collectionRoot is set, find all direct sub-pages and populate siteConfig.collections
// so templates can consume them without manual markdown links.
if (siteConfig.collectionRoot) {
const rootRoute = '/' + siteConfig.collectionRoot;
siteConfig.collections = Object.entries(pages)
.filter(([route]) => {
const prefix = rootRoute + '/';
if (!route.startsWith(prefix)) return false;
const rest = route.slice(prefix.length);
return !rest.includes('/'); // direct children only, no deeper nesting
})
.map(([route, page]) => ({
slug: route.split('/').pop(),
label: page.frontmatter.title || route.split('/').pop(),
description: page.frontmatter.description || '',
previewImage: page.images[0] || null,
path: route,
}));
console.log(`[build-content] Collections: ${siteConfig.collections.map(c => c.slug).join(', ')}`);
}
// --- Write output ---
const output = `// AUTO-GENERATED by scripts/build-content.js — do not edit by hand.

View File

@ -23,7 +23,9 @@ const App = () => (
<ContentProvider>
<>
<Navbar />
<PageRoutes />
<main className="app-content">
<PageRoutes />
</main>
<Footer />
</>
</ContentProvider>

View File

@ -1,27 +1,30 @@
.navbar {
position: relative;
display: flex;
align-items: center;
justify-content: space-between;
align-items: center;
background-color: var(--color-bg-nav);
padding: 10px 20px;
gap: 10px;
padding: 0 20px;
height: var(--nav-height);
box-sizing: border-box;
}
.navbar-logo {
.navbar-left {
display: flex;
align-items: center;
gap: 15px;
gap: 20px;
z-index: 1;
}
.navbar-logo .logo {
height: 50px;
.navbar-left .logo {
height: 44px;
border-radius: var(--radius-lg);
flex-shrink: 0;
}
.navbar-links {
display: flex;
flex-direction: row;
gap: 10px;
gap: 20px;
}
.navbar-links a {
@ -29,32 +32,140 @@
text-decoration: none;
font-family: var(--font-heading);
font-size: var(--font-size-base);
transition: text-decoration var(--transition-fast);
letter-spacing: 0.05em;
text-transform: uppercase;
opacity: 0.75;
transition: opacity var(--transition-fast);
}
.navbar-links a:hover {
text-decoration: underline;
opacity: 1;
}
.navbar-title h1 {
/* Absolutely positioned so it's always centered relative to the full navbar width */
.navbar-center {
position: absolute;
left: 50%;
transform: translateX(-50%);
text-align: center;
}
.navbar-center a {
text-decoration: none;
}
.navbar-center h1 {
color: var(--color-text-nav);
font-family: var(--font-heading);
font-size: 24px;
font-size: clamp(11px, 3.2vw, 20px);
font-weight: 400;
letter-spacing: 0.12em;
text-transform: uppercase;
margin: 0;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: calc(100vw - 160px);
}
.navbar-icons {
.navbar-right {
display: flex;
align-items: center;
gap: 15px;
gap: 16px;
z-index: 1;
}
.navbar-icons .icon {
height: 30px;
width: 30px;
transition: transform var(--transition-fast);
.navbar-social {
display: none;
}
.navbar-icons .icon:hover {
.icon {
height: 28px;
width: 28px;
opacity: 0.75;
transition: opacity var(--transition-fast), transform var(--transition-fast);
}
.icon:hover {
opacity: 1;
transform: scale(1.1);
}
.navbar-hamburger {
display: flex;
flex-direction: column;
gap: 5px;
background: none;
border: none;
cursor: pointer;
padding: 4px;
}
.navbar-hamburger span {
display: block;
width: 22px;
height: 2px;
background-color: var(--color-text-nav);
border-radius: 2px;
transition: transform 0.2s ease, opacity 0.2s ease;
}
.navbar-hamburger.open span:nth-child(1) {
transform: translateY(7px) rotate(45deg);
}
.navbar-hamburger.open span:nth-child(2) {
opacity: 0;
}
.navbar-hamburger.open span:nth-child(3) {
transform: translateY(-7px) rotate(-45deg);
}
/* Mobile dropdown menu */
.navbar-mobile-menu {
position: absolute;
top: 100%;
left: 0;
right: 0;
background-color: var(--color-bg-nav);
display: flex;
flex-direction: column;
align-items: center;
padding: 16px 20px 20px;
gap: 16px;
z-index: 100;
border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.navbar-mobile-menu a {
color: var(--color-text-nav);
text-decoration: none;
font-family: var(--font-heading);
font-size: var(--font-size-base);
letter-spacing: 0.05em;
text-transform: uppercase;
opacity: 0.75;
transition: opacity var(--transition-fast);
}
.navbar-mobile-menu a:hover {
opacity: 1;
}
.mobile-menu-icons {
display: flex;
justify-content: center;
gap: 20px;
padding-top: 4px;
}
.mobile-menu-icons .icon {
height: 22px;
width: 22px;
}
/* Nav links are always in the dropdown, never inline */
.navbar-links {
display: none;
}

View File

@ -1,4 +1,4 @@
import React, { useEffect, useState } from 'react';
import { useEffect, useState } from 'react';
import { Link } from 'react-router-dom';
import { useSiteConfig } from '../framework/ContentProvider';
import './Navbar.css';
@ -18,6 +18,7 @@ const darkModeQuery = window.matchMedia('(prefers-color-scheme: dark)');
const Navbar = () => {
const { siteTitle, nav, social } = useSiteConfig();
const [isDarkMode, setIsDarkMode] = useState(darkModeQuery.matches);
const [menuOpen, setMenuOpen] = useState(false);
useEffect(() => {
const handler = (e) => setIsDarkMode(e.matches);
@ -25,9 +26,25 @@ const Navbar = () => {
return () => darkModeQuery.removeEventListener('change', handler);
}, []);
useEffect(() => {
const handleResize = () => { if (window.innerWidth > 640) setMenuOpen(false); };
window.addEventListener('resize', handleResize);
return () => window.removeEventListener('resize', handleResize);
}, []);
const SocialIcons = () => social.map(({ label, url, icon }) => {
const icons = ICON_MAP[icon];
const src = icons ? (isDarkMode ? icons.dark : icons.light) : null;
return (
<a key={icon} href={url} target="_blank" rel="noopener noreferrer">
{src && <img src={src} alt={label} className="icon" title={label} />}
</a>
);
});
return (
<nav className="navbar">
<div className="navbar-logo">
<div className="navbar-left">
<Link to="/">
<img src={logo} alt="Logo" className="logo" />
</Link>
@ -37,20 +54,35 @@ const Navbar = () => {
))}
</div>
</div>
<div className="navbar-title">
<h1>{siteTitle}</h1>
<div className="navbar-center">
<Link to="/"><h1>{siteTitle}</h1></Link>
</div>
<div className="navbar-icons">
{social.map(({ label, url, icon }) => {
const icons = ICON_MAP[icon];
const src = icons ? (isDarkMode ? icons.dark : icons.light) : null;
return (
<a key={icon} href={url} target="_blank" rel="noopener noreferrer">
{src && <img src={src} alt={label} className="icon" title={label} />}
</a>
);
})}
<div className="navbar-right">
<div className="navbar-social">
<SocialIcons />
</div>
<button
className={`navbar-hamburger${menuOpen ? ' open' : ''}`}
onClick={() => setMenuOpen(o => !o)}
aria-label="Toggle menu"
aria-expanded={menuOpen}
>
<span /><span /><span />
</button>
</div>
{menuOpen && (
<div className="navbar-mobile-menu">
{nav.map(({ label, path }) => (
<Link key={path} to={path} onClick={() => setMenuOpen(false)}>{label}</Link>
))}
<div className="mobile-menu-icons">
<SocialIcons />
</div>
</div>
)}
</nav>
);
};

View File

@ -1,11 +1,15 @@
import GalleryTemplate from '../templates/GalleryTemplate';
import CarouselTemplate from '../templates/CarouselTemplate';
import CollectionTemplate from '../templates/CollectionTemplate';
import CollectionIndexTemplate from '../templates/CollectionIndexTemplate';
import DefaultTemplate from '../templates/DefaultTemplate';
import ContactTemplate from '../templates/ContactTemplate';
import HomepageTemplate from '../templates/HomepageTemplate';
import MenuTemplate from '../templates/MenuTemplate';
const registry = {
gallery: GalleryTemplate,
carousel: CarouselTemplate,
collection: CollectionTemplate,
'collection-index': CollectionIndexTemplate,
default: DefaultTemplate,
contact: ContactTemplate,
homepage: HomepageTemplate,

View File

@ -1,267 +0,0 @@
// AUTO-GENERATED by scripts/build-content.js — do not edit by hand.
export const siteConfig = {
"siteTitle": "Jake Runyan Photography",
"footerCopyright": "Jake Runyan",
"nav": [
{
"label": "Gallery",
"path": "/gallery"
},
{
"label": "Contact",
"path": "/contact"
},
{
"label": "About",
"path": "/about"
}
],
"social": [
{
"label": "Instagram",
"url": "https://www.instagram.com/jakerunyanphotography",
"icon": "instagram"
},
{
"label": "GitHub",
"url": "https://github.com/runyanjake/jakesphotos",
"icon": "github"
}
]
};
export const pages = {
"/": {
"frontmatter": {
"template": "homepage",
"title": "Jake Runyan Photography",
"subtitle": "Bay Area · Cycling · Life"
},
"content": "## Bay Area Life\n![](https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)\nI'm Jake, a small-time photographer out of the Bay Area. I shoot the world around me — the coastlines, the hills, the everyday scenes that make this place feel like home.\n\n## On Two Wheels\n![](https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)\nMy Sony Alpha 6300 comes along on every ride. There's something about cycling that puts you right in the middle of a scene — no glass between you and the world.\n\n## Everyday Moments\n![](https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)\nBeyond landscapes, it's the small details that catch my eye — textures, light, the quiet moments between everything else.",
"images": [
"https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1114e4b3-99a7-4cdc-9ce2-ad52d1a0046f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1ce61b59-98a7-401c-9840-72dc51822494/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2250e289-03ae-4ee4-a63a-3ba29db99dd0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ec93e5f8-ca2e-4078-8190-d884435513eb/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/40cb4952-0b8a-4500-a692-a20acbe01ff4/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2fe3919e-00d4-4afc-8140-a81dbf266c82/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/3a89717a-b0b9-42a6-ab34-0f4dc3d90987/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8beaf017-029f-4827-a3c2-066f9453e271/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/87cd7f35-f4c5-4a1e-a56d-c6d8e9d082da/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2c55949d-7a2d-4bde-a87e-107ce352bc60/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/44f3ce06-3b34-42d2-9396-424ff95ba672/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d88e4a71-d645-48de-9b22-aad8f1ae3bde/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d84b166b-56fc-48cb-b932-7847d70ade04/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/01d40f57-dbf6-4c9d-8fc1-0ac22dfe17e5/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e7055bf2-626a-47a5-9526-15b2de26249e/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/7635d87d-5ed6-4342-9cc2-0c6d0e0a1425/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0beaaf50-cb2c-4d84-b099-e1af24f7d2e3/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/90052323-c4df-4820-8fe8-7658424991b8/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4749cdd5-aa5a-4911-9567-f3f5afca6ecc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1a8dd56a-3433-40ab-8619-f385560ee807/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fe1b66b4-4f98-43a3-bb26-6d4661d5ffe2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/787274d8-d94b-479c-9a11-b60f3ca3e640/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/91d11918-7471-4e81-b101-23511e14f45d/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/bfa43b2b-4aa1-4792-ab2f-aff1e226cdf0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/30273029-cba9-45a6-aa7c-3af27d0bd835/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f7bfc5b1-6ef6-42ce-b4a2-237939b03ae9/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e29ce2a5-987c-4453-81f2-b2e7b161e7d2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/3082f0af-fb30-4e04-baae-5b47d310e380/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/15dd24ba-e2ae-4093-a098-988aac86e1e0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fc6c3d20-2521-4d31-9f31-19476ad30a65/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8a750cc3-7bef-4bc6-9727-83151dead578/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4db2ea6d-8998-40df-bf05-fc27beeb2085/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ec92f32f-0c08-4317-b8e2-90c53c2e6416/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/7d5803ea-20b9-448f-9659-6fb801f15c68/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/dfb53a18-05dc-4cbc-bdd2-7f8b6f5a4e8e/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e6934d1a-543c-4ed8-9c29-a94e915f9d94/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0e88d871-fc8e-4ac3-a96a-920fce3cc546/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/379a3b92-ff9b-4455-afe7-c2c6a8a270cd/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4d759c78-64c8-4607-9b61-7d1f536fe98f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0ff98add-0a3c-408b-af91-6320df62910f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ce5eba3e-c444-4a20-a88a-92bfe56c6891/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/a837364d-ed8a-44cf-a8db-8db320bf81e6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8e254f41-7b14-48b3-ba98-a96fb9c05129/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1f877a0c-8e36-4751-b50a-5ea12c73aefc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1979efcd-ba01-4194-b0f7-8e64a996c1cc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f4fcf415-7eb1-4131-8ef8-b0456aa31c62/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4e440673-7294-48ac-99a4-05cc3fb07cd2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/62baec73-487d-4a72-bdc4-7c168cf6f82a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/88cd4904-2ab1-4c60-b225-58d73945d724/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/dd59bec7-d922-4a53-af12-3f252c109d0d/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d33762bc-1204-4f33-8e6f-2ea5bde72f1a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fe4c9bf0-334b-40fb-9a44-8b1984e2818a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/993736e1-a3ae-4ec5-8c67-c25c4c734f23/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/038e8d18-87cd-49f4-8e53-4c36a5f76cfb/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/994408ea-6f04-473f-84ea-de3c77265298/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ddaf8248-7cdf-4e39-9639-d2826dc9d038/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/214921e1-7b75-4059-ad53-1c1062f6df45/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/72d0e30d-c27c-4d8e-8977-0ae438178324/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d496de3c-bf3a-4b49-a34a-96c998c288a0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fd4b8886-7a55-478e-8bc8-6cba70fe9cd2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/30b56b85-3225-44df-903d-5ba14e07927c/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/185d198a-a2d3-40f1-b508-11d03edf8162/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/92063a5c-0c50-46c1-9bb3-8c294305b5a7/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2fb5267d-7b71-4612-ad9c-4be961704a67/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4d0fbaa8-90c2-4a46-9b32-d463fac24ba1/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/bb8cf2fc-a745-4ff9-87a3-51a5407de9a3/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/abefba8f-c77e-46e7-9f62-9a3da5ec8128/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d9fc53c6-4645-4451-91d5-94927ff638ea/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ddf6d29e-81f4-4c3b-8277-450a88b0d75f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/b66557e8-aa4a-4f0b-b252-ee0ece28b0b5/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8f6df2db-6a63-446b-9c00-5830ff91ea5c/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/00d4ad2e-d549-45ac-9a7c-d9f97cc2a0ba/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/97e8aa93-39fb-42d9-b1e0-0536eb81e4ba/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0eef2205-2260-4307-80fa-520aeb139558/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0fe37f58-c2c6-4007-ae6d-0230ab4a7507/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]
},
"/about": {
"frontmatter": {
"template": "default",
"title": "About Me",
"profileImage": "https://gallery.whitney.rip/api/v1/t/287329d8835b299400819437c9c2a2d192041159/2tdm690t/fit_4096"
},
"content": "I'm Jake, a small time photographer out of the Bay Area. I started shooting as a kid on my dad's old Canon EOS 60D, and now have graduated to owning my own gear. Having an artistic outlet has always been a force of balance for me, and with a background in video and photo editing, this has been a fun one.\n\nMy current setup is a Sony Alpha 6300 with a 27mm pancake lens. This budget setup was perfect for bringing my camera along on bike rides, as cycling is another hobby. You can find me on Youtube as Jake's West Coast. My current photography interests include capturing the beauty of the Bay Area and California coast on our bike rides, as well as moments in my everyday life.\n\nIf you'd like to learn more about Jake, the person, you can find more at my instagram @runyanjake or on my personal website jake.runyan.dev.",
"images": []
},
"/contact": {
"frontmatter": {
"template": "contact",
"title": "Contact Me",
"email": "jake@runyan.dev",
"instagram": "jakerunyanphotography"
},
"content": "",
"images": []
},
"/gallery": {
"frontmatter": {
"template": "menu",
"title": "Gallery",
"description": "Browse my photo collections"
},
"content": "## [Landscapes](/gallery/landscapes)\n![](https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)\nMountains, coastal cliffs, and open skies across California and the Bay Area.\n\n## [Portraits](/gallery/portraits)\n![](https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)\nCandid moments and faces from everyday life.\n\n## [Textures](/gallery/textures)\n![](https://images.whitney.rip/api/assets/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)\nAbstract surfaces and patterns found in the world around us.\n\n## [Nature](/gallery/nature)\n![](https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D)\nFlora, fauna, and natural forms.",
"images": []
},
"/gallery/landscapes": {
"frontmatter": {
"template": "gallery",
"title": "Landscapes"
},
"content": "",
"images": [
"https://images.whitney.rip/api/assets/d14fcd1e-5479-4312-ae39-055283c8fd75/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1114e4b3-99a7-4cdc-9ce2-ad52d1a0046f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1ce61b59-98a7-401c-9840-72dc51822494/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2250e289-03ae-4ee4-a63a-3ba29db99dd0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ec93e5f8-ca2e-4078-8190-d884435513eb/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/40cb4952-0b8a-4500-a692-a20acbe01ff4/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2fe3919e-00d4-4afc-8140-a81dbf266c82/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/3a89717a-b0b9-42a6-ab34-0f4dc3d90987/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8beaf017-029f-4827-a3c2-066f9453e271/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/87cd7f35-f4c5-4a1e-a56d-c6d8e9d082da/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2c55949d-7a2d-4bde-a87e-107ce352bc60/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/44f3ce06-3b34-42d2-9396-424ff95ba672/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d88e4a71-d645-48de-9b22-aad8f1ae3bde/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d84b166b-56fc-48cb-b932-7847d70ade04/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/01d40f57-dbf6-4c9d-8fc1-0ac22dfe17e5/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e7055bf2-626a-47a5-9526-15b2de26249e/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/7635d87d-5ed6-4342-9cc2-0c6d0e0a1425/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0beaaf50-cb2c-4d84-b099-e1af24f7d2e3/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/90052323-c4df-4820-8fe8-7658424991b8/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4749cdd5-aa5a-4911-9567-f3f5afca6ecc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]
},
"/gallery/nature": {
"frontmatter": {
"template": "gallery",
"title": "Nature"
},
"content": "",
"images": [
"https://images.whitney.rip/api/assets/18e59afb-8d23-433d-9f91-fb78d6efc729/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/72d0e30d-c27c-4d8e-8977-0ae438178324/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d496de3c-bf3a-4b49-a34a-96c998c288a0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fd4b8886-7a55-478e-8bc8-6cba70fe9cd2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/30b56b85-3225-44df-903d-5ba14e07927c/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/185d198a-a2d3-40f1-b508-11d03edf8162/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/92063a5c-0c50-46c1-9bb3-8c294305b5a7/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/2fb5267d-7b71-4612-ad9c-4be961704a67/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4d0fbaa8-90c2-4a46-9b32-d463fac24ba1/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/bb8cf2fc-a745-4ff9-87a3-51a5407de9a3/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/abefba8f-c77e-46e7-9f62-9a3da5ec8128/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d9fc53c6-4645-4451-91d5-94927ff638ea/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ddf6d29e-81f4-4c3b-8277-450a88b0d75f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/b66557e8-aa4a-4f0b-b252-ee0ece28b0b5/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8f6df2db-6a63-446b-9c00-5830ff91ea5c/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/00d4ad2e-d549-45ac-9a7c-d9f97cc2a0ba/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/97e8aa93-39fb-42d9-b1e0-0536eb81e4ba/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0eef2205-2260-4307-80fa-520aeb139558/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0fe37f58-c2c6-4007-ae6d-0230ab4a7507/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]
},
"/gallery/portraits": {
"frontmatter": {
"template": "gallery",
"title": "Portraits"
},
"content": "",
"images": [
"https://images.whitney.rip/api/assets/f4c18690-b0fe-4ed1-a1d7-ea49b8828aa6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1a8dd56a-3433-40ab-8619-f385560ee807/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fe1b66b4-4f98-43a3-bb26-6d4661d5ffe2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/787274d8-d94b-479c-9a11-b60f3ca3e640/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/91d11918-7471-4e81-b101-23511e14f45d/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/bfa43b2b-4aa1-4792-ab2f-aff1e226cdf0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/30273029-cba9-45a6-aa7c-3af27d0bd835/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f7bfc5b1-6ef6-42ce-b4a2-237939b03ae9/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e29ce2a5-987c-4453-81f2-b2e7b161e7d2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/3082f0af-fb30-4e04-baae-5b47d310e380/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/15dd24ba-e2ae-4093-a098-988aac86e1e0/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fc6c3d20-2521-4d31-9f31-19476ad30a65/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8a750cc3-7bef-4bc6-9727-83151dead578/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4db2ea6d-8998-40df-bf05-fc27beeb2085/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ec92f32f-0c08-4317-b8e2-90c53c2e6416/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/7d5803ea-20b9-448f-9659-6fb801f15c68/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/dfb53a18-05dc-4cbc-bdd2-7f8b6f5a4e8e/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/e6934d1a-543c-4ed8-9c29-a94e915f9d94/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0e88d871-fc8e-4ac3-a96a-920fce3cc546/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/379a3b92-ff9b-4455-afe7-c2c6a8a270cd/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]
},
"/gallery/textures": {
"frontmatter": {
"template": "gallery",
"title": "Textures"
},
"content": "",
"images": [
"https://images.whitney.rip/api/assets/e03f66a6-a619-4624-a473-860026b3446a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4d759c78-64c8-4607-9b61-7d1f536fe98f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/0ff98add-0a3c-408b-af91-6320df62910f/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ce5eba3e-c444-4a20-a88a-92bfe56c6891/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/a837364d-ed8a-44cf-a8db-8db320bf81e6/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/8e254f41-7b14-48b3-ba98-a96fb9c05129/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1f877a0c-8e36-4751-b50a-5ea12c73aefc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/1979efcd-ba01-4194-b0f7-8e64a996c1cc/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/f4fcf415-7eb1-4131-8ef8-b0456aa31c62/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/4e440673-7294-48ac-99a4-05cc3fb07cd2/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/62baec73-487d-4a72-bdc4-7c168cf6f82a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/88cd4904-2ab1-4c60-b225-58d73945d724/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/dd59bec7-d922-4a53-af12-3f252c109d0d/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/d33762bc-1204-4f33-8e6f-2ea5bde72f1a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/fe4c9bf0-334b-40fb-9a44-8b1984e2818a/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/993736e1-a3ae-4ec5-8c67-c25c4c734f23/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/038e8d18-87cd-49f4-8e53-4c36a5f76cfb/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/994408ea-6f04-473f-84ea-de3c77265298/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/ddaf8248-7cdf-4e39-9639-d2826dc9d038/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D",
"https://images.whitney.rip/api/assets/214921e1-7b75-4059-ad53-1c1062f6df45/thumbnail?size=preview&key=3bkhzXZq8wkOQRjr58hDYLhenYNOyIDDCoq0tJ0G1nYOnJg04e-PLvFj9zJHEYV3ni8&c=iSbUaYtTBiWbtzPKIazyFcbZYFQ%3D"
]
}
};

View File

@ -7,6 +7,19 @@ body {
-moz-osx-font-smoothing: grayscale;
}
#root {
display: flex;
flex-direction: column;
min-height: 100vh;
}
.app-content {
flex: 1;
display: flex;
flex-direction: column;
background-color: var(--color-bg);
}
code {
font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
monospace;

View File

@ -0,0 +1,118 @@
.carousel {
position: relative;
overflow: hidden;
height: calc(100vh - var(--nav-height));
background-color: var(--color-bg);
user-select: none;
}
.carousel-track {
display: flex;
height: 100%;
/* transition managed inline to allow silent snaps */
}
.carousel-slide {
flex-shrink: 0;
width: calc(100vw / 3);
height: 100%;
}
.carousel-slide-inner {
display: block;
width: 100%;
height: 100%;
position: relative;
text-decoration: none;
}
.carousel-image {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.carousel-caption {
position: absolute;
bottom: 72px;
left: 0;
right: 0;
text-align: center;
color: #fff;
font-family: var(--font-heading);
font-size: clamp(0.65rem, 2vw, 1.4rem);
font-weight: 300;
letter-spacing: 0.2em;
text-transform: uppercase;
text-shadow: 0 2px 12px rgba(0, 0, 0, 0.7);
pointer-events: none;
}
@media (max-width: 600px) {
.carousel-slide {
width: 100vw;
}
.carousel-caption {
font-size: clamp(0.8rem, 4vw, 1.2rem);
letter-spacing: 0.12em;
bottom: 48px;
}
}
.carousel-btn {
position: absolute;
top: 50%;
transform: translateY(-50%);
background: rgba(0, 0, 0, 0.25);
border: none;
color: #fff;
font-size: 3rem;
line-height: 1;
padding: 16px 20px;
cursor: pointer;
z-index: 10;
transition: background var(--transition-fast);
}
.carousel-btn:hover {
background: rgba(0, 0, 0, 0.55);
}
.carousel-btn-prev {
left: 0;
border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.carousel-btn-next {
right: 0;
border-radius: var(--radius-sm) 0 0 var(--radius-sm);
}
.carousel-dots {
position: absolute;
bottom: 28px;
left: 0;
right: 0;
display: flex;
justify-content: center;
gap: 10px;
z-index: 10;
}
.carousel-dot {
width: 8px;
height: 8px;
border-radius: 50%;
border: none;
background: rgba(255, 255, 255, 0.45);
cursor: pointer;
padding: 0;
transition: background var(--transition-fast), transform var(--transition-fast);
}
.carousel-dot.active {
background: #fff;
transform: scale(1.35);
}

View File

@ -0,0 +1,157 @@
import React, { useCallback, useEffect, useRef, useState } from 'react';
import { Link } from 'react-router-dom';
import { Helmet } from 'react-helmet';
import './CarouselTemplate.css';
const VISIBLE = 3;
const AUTOPLAY_DELAY = 4000;
const MOBILE_BREAKPOINT = 600;
function parseSlides(content) {
const parts = content.split(/^## /m);
return parts
.filter(part => part.trim())
.map(part => {
const lines = part.split('\n');
const headingLine = lines[0].trim();
const rest = lines.slice(1);
const linkMatch = headingLine.match(/^\[(.+?)\]\((.+?)\)/);
const label = linkMatch ? linkMatch[1] : headingLine;
const path = linkMatch ? linkMatch[2] : null;
let imageUrl = null;
for (const line of rest) {
const imgMatch = line.match(/!\[.*?\]\((.*?)\)/);
if (imgMatch) { imageUrl = imgMatch[1]; break; }
}
return { label, path, imageUrl };
})
.filter(s => s.imageUrl);
}
function buildTrack(slides) {
// Prepend last VISIBLE slides, append first VISIBLE slides as clones.
// Real slides start at trackIndex = VISIBLE.
const pre = slides.slice(-VISIBLE);
const post = slides.slice(0, VISIBLE);
return [...pre, ...slides, ...post];
}
export default function CarouselTemplate({ page }) {
const { frontmatter, content } = page;
const slides = parseSlides(content);
const count = slides.length;
const track = buildTrack(slides);
// Start positioned at the first real slide (after the prepended clones)
const [trackIndex, setTrackIndex] = useState(VISIBLE);
const [animated, setAnimated] = useState(true);
const [paused, setPaused] = useState(false);
const [slideWidthPct, setSlideWidthPct] = useState(
window.innerWidth <= MOBILE_BREAKPOINT ? 100 : 100 / 3
);
const timerRef = useRef(null);
useEffect(() => {
const mq = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT}px)`);
const handler = (e) => setSlideWidthPct(e.matches ? 100 : 100 / 3);
mq.addEventListener('change', handler);
return () => mq.removeEventListener('change', handler);
}, []);
const advance = useCallback(() => setTrackIndex(i => i + 1), []);
const startTimer = useCallback(() => {
clearInterval(timerRef.current);
timerRef.current = setInterval(advance, AUTOPLAY_DELAY);
}, [advance]);
useEffect(() => {
if (!paused) startTimer();
else clearInterval(timerRef.current);
return () => clearInterval(timerRef.current);
}, [paused, startTimer]);
// After the CSS transition lands in the clone zone, snap silently to the real equivalent
const handleTransitionEnd = useCallback(() => {
if (trackIndex >= count + VISIBLE) {
setAnimated(false);
setTrackIndex(VISIBLE);
} else if (trackIndex < VISIBLE) {
setAnimated(false);
setTrackIndex(count);
}
}, [trackIndex, count]);
// Re-enable animation on the next two frames after a silent snap
useEffect(() => {
if (!animated) {
const f1 = requestAnimationFrame(() => {
const f2 = requestAnimationFrame(() => setAnimated(true));
return () => cancelAnimationFrame(f2);
});
return () => cancelAnimationFrame(f1);
}
}, [animated]);
const handlePrev = () => { setTrackIndex(i => i - 1); if (!paused) startTimer(); };
const handleNext = () => { setTrackIndex(i => i + 1); if (!paused) startTimer(); };
const goTo = (slideIndex) => { setTrackIndex(slideIndex + VISIBLE); if (!paused) startTimer(); };
// Which real slide is at the left edge of the window (for dots)
const activeSlide = ((trackIndex - VISIBLE) % count + count) % count;
if (!count) return null;
return (
<>
<Helmet><title>{frontmatter.title}</title></Helmet>
<div
className="carousel"
onMouseEnter={() => setPaused(true)}
onMouseLeave={() => setPaused(false)}
>
<div
className="carousel-track"
style={{
transform: `translateX(calc(-${trackIndex * slideWidthPct}vw))`,
transition: animated ? 'transform 1.2s ease' : 'none',
}}
onTransitionEnd={handleTransitionEnd}
>
{track.map((slide, i) => (
<div key={i} className="carousel-slide">
{slide.path ? (
<Link to={slide.path} className="carousel-slide-inner">
<img className="carousel-image" src={slide.imageUrl} alt={slide.label} />
<div className="carousel-caption">{slide.label}</div>
</Link>
) : (
<div className="carousel-slide-inner">
<img className="carousel-image" src={slide.imageUrl} alt={slide.label} />
<div className="carousel-caption">{slide.label}</div>
</div>
)}
</div>
))}
</div>
<button className="carousel-btn carousel-btn-prev" onClick={handlePrev} aria-label="Previous">&#8249;</button>
<button className="carousel-btn carousel-btn-next" onClick={handleNext} aria-label="Next">&#8250;</button>
<div className="carousel-dots">
{slides.map((_, i) => (
<button
key={i}
className={`carousel-dot${i === activeSlide ? ' active' : ''}`}
onClick={() => goTo(i)}
aria-label={`Go to slide ${i + 1}`}
/>
))}
</div>
</div>
</>
);
}

View File

@ -0,0 +1,33 @@
import React from 'react';
import { Link } from 'react-router-dom';
import { Helmet } from 'react-helmet';
import { useSiteConfig } from '../framework/ContentProvider';
import './MenuTemplate.css';
export default function CollectionIndexTemplate({ page }) {
const { collections } = useSiteConfig();
const { title, description } = page.frontmatter;
return (
<div className="menu-page">
<Helmet><title>{title}</title></Helmet>
<div className="menu-header">
<h1>{title}</h1>
{description && <p className="menu-description">{description}</p>}
</div>
<div className="menu-grid">
{(collections || []).map(col => (
<Link key={col.slug} to={col.path} className="menu-card">
{col.previewImage && (
<img className="menu-card-image" src={col.previewImage} alt={col.label} />
)}
<div className="menu-card-title">{col.label}</div>
{col.description && (
<div className="menu-card-desc">{col.description}</div>
)}
</Link>
))}
</div>
</div>
);
}

View File

@ -1,6 +1,5 @@
.gallery {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
width: 100%;
margin: 0 auto;
background-color: var(--color-bg);
}

View File

@ -2,7 +2,7 @@ import React, { useEffect, useMemo, useRef, useState } from 'react';
import Masonry from 'masonry-layout';
import { Helmet } from 'react-helmet';
import Lightbox from '../components/Lightbox';
import './GalleryTemplate.css';
import './CollectionTemplate.css';
const shuffleArray = (array) => {
for (let i = array.length - 1; i > 0; i--) {
@ -12,7 +12,7 @@ const shuffleArray = (array) => {
return array;
};
const GalleryTemplate = ({ page }) => {
const CollectionTemplate = ({ page }) => {
const masonryRef = useRef(null);
const [focusedImage, setFocusedImage] = useState(null);
@ -55,4 +55,4 @@ const GalleryTemplate = ({ page }) => {
);
};
export default GalleryTemplate;
export default CollectionTemplate;