diff --git a/frontend/src/lib/components/RoomCard.svelte b/frontend/src/lib/components/RoomCard.svelte new file mode 100644 index 0000000..1c8e2bb --- /dev/null +++ b/frontend/src/lib/components/RoomCard.svelte @@ -0,0 +1,72 @@ + + + + {#if room.preview === 'art' && artImg} +
+ {/if} + +
+
{room.icon}{room.title}
+ + {#if room.preview === 'news' && newsHeadline} +

“{newsHeadline}”

+ {:else} +

{room.blurb}

+ {/if} + + {room.cta} +
+
+ + diff --git a/frontend/src/lib/rooms.js b/frontend/src/lib/rooms.js new file mode 100644 index 0000000..18f8d6b --- /dev/null +++ b/frontend/src/lib/rooms.js @@ -0,0 +1,46 @@ +// The homepage hub as data. Each "room" is one entry — add, reorder, or resize by +// editing this list. `size` drives the grid footprint (large | wide | tall | small); +// `preview` picks how the card shows itself (news/art = live snippet, static = blurb). +// Copy here is placeholder — owner-written final wording lands later. +export const ROOMS = [ + { + id: 'news', + title: 'Good News', + blurb: "The world's quiet good, gathered each morning.", + href: '/', // becomes /news once the Brief is split out + cta: 'Read the Brief', + size: 'large', + preview: 'news', + icon: '📰', + }, + { + id: 'art', + title: 'Daily Art', + blurb: 'A masterwork a day, beautifully framed.', + href: '/art', + cta: 'View today', + size: 'wide', + preview: 'art', + icon: '🖼️', + }, + { + id: 'play', + title: 'Play', + blurb: 'Daily Word, Word Search, Bloom, Memory Match.', + href: '/play', + cta: 'Enter', + size: 'small', + preview: 'static', + icon: '🎲', + }, + { + id: 'moment', + title: 'Daily Moment', + blurb: 'A small calm to carry with you.', + href: '#', + cta: 'Soon', + size: 'small', + preview: 'static', + icon: '🌿', + }, +]; diff --git a/frontend/src/routes/home2/+page.svelte b/frontend/src/routes/home2/+page.svelte new file mode 100644 index 0000000..2d9f413 --- /dev/null +++ b/frontend/src/routes/home2/+page.svelte @@ -0,0 +1,122 @@ + + + + upbeatBytes — a calmer corner of the internet + + + + +
+
+ + upbeatBytes + + +
+ +
+
+

A calmer corner of the internet.

+

Good news, daily art, small games, and little resets.

+
+ +
+ {#each ROOMS as r (r.id)} + + {/each} +
+
+ + +
+ +