diff --git a/.superpowers/brainstorm/44094-1777186296/content/badge-naming.html b/.superpowers/brainstorm/44094-1777186296/content/badge-naming.html new file mode 100644 index 0000000..a25f64a --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/content/badge-naming.html @@ -0,0 +1,33 @@ +

Badge Naming — "Native Champion" Alternatives

+

This badge marks games/presets that hit 60+ FPS with zero FSR and zero frame generation. Which name fits the brand best?

+ +
+
+
A
+
+

Raw Performer

+

Emphasizes unassisted performance. Technical, no-nonsense. "Raw" signals no upscaling tricks.

+
+
+
+
B
+
+

Pure Performance

+

Clean and clear. "Pure" = untouched settings. Easy to understand at a glance.

+
+
+
+
C
+
+

Native Champion

+

Your original idea. "Champion" has a competitive/gaming feel. Slightly longer.

+
+
+
+
D
+
+

Untouched

+

Short, punchy. Implies the game runs great without any modifications. Memorable.

+
+
+
diff --git a/.superpowers/brainstorm/44094-1777186296/content/game-page-layout.html b/.superpowers/brainstorm/44094-1777186296/content/game-page-layout.html new file mode 100644 index 0000000..9fc9326 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/content/game-page-layout.html @@ -0,0 +1,149 @@ +

Game Page Layout — Overall Structure

+

Here's the proposed page structure top-to-bottom. Each section is labeled.

+ +
+
Section 1: Hero Header — Card Image + Game Info
+
+
+ +
+ 2:3 Cover +
+ +
+
Game Title Here
+
Developer · Publisher · Genre, Genre
+ +
+ 🎮 42 Benchmarks + ⚙️ 8 Presets + 💬 15 Comments + Metascore: 87 + $29.99 +
+ +
+ Steam ↗ + ProtonDB ↗ + SteamDB ↗ +
+ +
+ 📊 42 benchmarks + 📋 3 game versions + ✅ 12 verified entries + 🕐 Last updated 2 days ago +
+
+
+
+
+ +
+
Section 2: Overview — Description + Details
+
+
+
+
About
+
Game description text goes here. This is the Steam short description that gets synced from the store page. It provides context about what the game is about...
+
+
+
Details
+
+
Source: Steam
+
AppID: 1234567
+
Added: Jan 15, 2026
+
Last Sync: 2 days ago
+
+
+
+
+
+ +
+
Section 3: Device Selector Ribbon + Fine Filters
+
+ +
Select Devices
+
+
✓ Steam Deck OLED
+
Steam Deck LCD
+
Steam Machine
+
+ +
Filters
+
+ + + + +
+
+
+ +
+
Section 4: Statistics Dashboard (ECharts)
+
+
+ +
+
AVG FPS Distribution (Boxplot)
+
+ [Boxplot: Min / Q1 / Median / Q3 / Max per device] +
+
+ +
+
Historical AVG FPS (Stacked Area)
+
+ [Area chart: FPS over time by proton/OS version] +
+
+ +
+
FPS by Upscaler & Frame Gen
+
+ [Grouped bar: FPS by FSR version × frame gen method] +
+
+ +
+
Entries per Device
+
+ [Pie/donut or bar: count per device] +
+
+
+
+
+ +
+
Section 5: Preset Entries
+
+
Community Presets
+
+
+
+
"Best Quality" by @user1
+
Steam Deck OLED · ↑ 24 · 8 settings
+
+
Avg 45 FPS
+
+
+
+
"Battery Saver" by @user2
+
Steam Deck OLED · ↑ 18 · 6 settings
+
+
Avg 60 FPS
+
+
+
+
diff --git a/.superpowers/brainstorm/44094-1777186296/content/game-page-v2.html b/.superpowers/brainstorm/44094-1777186296/content/game-page-v2.html new file mode 100644 index 0000000..5eee674 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/content/game-page-v2.html @@ -0,0 +1,223 @@ +

Game Page v2 — Updated Layout

+

Changes: "Raw Performer" badge, no duplicate stats, full-width priority charts, enhanced preset cards.

+ + + + +
+
Section 1: Hero Header
+
+
+ +
+ 2:3 Cover +
+ +
+
+ Game Title Here + + ⚡ RAW PERFORMER +
+
Developer · Publisher · Genre, Genre
+ +
+ 🎮 42 Benchmarks + ⚙️ 8 Presets + 💬 15 Comments + Metascore: 87 + $29.99 +
+ +
+ Steam ↗ + ProtonDB ↗ + SteamDB ↗ +
+ +
+ 📋 3 versions + ✅ 12 verified + 🕐 Synced 2 days ago +
+
+
+
+
+ + + + +
+
Section 2: Overview
+
+
+
+
About
+
Game description text goes here. This is the Steam short description that gets synced from the store page...
+
+
+
Details
+
+
Source: Steam
+
AppID: 1234567
+
Added: Jan 15, 2026
+
Last Sync: 2 days ago
+
+
+
+
+
+ + + + +
+
Section 3: Device Selector Ribbon + Filters
+
+
Select Devices
+
+
✓ Steam Deck OLED
+
Steam Deck LCD
+ +
+
Filters
+
+ + + + +
+
+
+ + + + +
+
Section 4: Statistics Dashboard (ECharts)
+
+ + +
+
📈 Historical AVG FPS — Full Width
+
+ [Stacked Area: AVG FPS trend over time, grouped by Proton/SteamOS version] +
+
+ + +
+
🎮 FPS by Upscaler & Frame Gen — Full Width
+
+ [Grouped Bar: FPS by FSR version (none/1/2/3) × Frame Gen (none/fsr_fg/dlss_fg), with label rotation] +
+
+ + +
+
+
📊 AVG FPS Boxplot
+
+ [Boxplot per device: Min/Q1/Median/Q3/Max] +
+
+
+
🖥️ Entries per Device
+
+ [Donut: benchmark count per device] +
+
+
+ + +
+
+
📉 FPS Range (Low vs High)
+
+ [Range bar: fpsLow → fpsHigh per entry] +
+
+
+
⏱️ Load Times (SSD vs SD)
+
+ [Bar: SSD vs SD load times — only shows if data exists] +
+
+
+ + +
+
✅ Community Trust — Full Width
+
+ [Horizontal bar: verified badge count + upvote/downvote ratio per benchmark entry] +
+
+
+
+ + + + +
+
Section 5: Community Presets
+
+
Community Presets
+ + +
+
+
+
+ "Vanilla 60fps" + ⚡ RAW PERFORMER +
+
by @user1 · Steam Deck OLED · ↑ 24 votes · 8 settings
+
No FSR · No Frame Gen · Proton 9.0-4 · SteamOS 3.6.20
+
+
+
62 FPS
+
avg · 48 low · 71 high
+
+
+
+ + +
+
+
+
+ "Max Quality + FSR" +
+
by @user2 · Steam Deck OLED · ↑ 18 votes · 10 settings
+
+ FSR 3 · FSR Frame Gen · Proton 9.0-4 · SteamOS 3.6.20 +
+
+
+
85 FPS
+
avg · 72 low · 94 high
+
+
+
+ + +
+
+
+
+ "Balanced + DLSS FG" +
+
by @user3 · Steam Deck LCD · ↑ 9 votes · 7 settings
+
+ FSR 2 · DLSS Frame Gen · Proton 8.0-5 · SteamOS 3.5.19 +
+
+
+
72 FPS
+
avg · 58 low · 81 high
+
+
+
+
+
diff --git a/.superpowers/brainstorm/44094-1777186296/content/search-badge.html b/.superpowers/brainstorm/44094-1777186296/content/search-badge.html new file mode 100644 index 0000000..9762868 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/content/search-badge.html @@ -0,0 +1,60 @@ +

Search Card — Raw Performer Badge

+

How the badge appears on search result cards. Same green pill style as the game page hero.

+ +
+
Search Result Card with Raw Performer
+
+ +
+ +
+ 2:3 +
+ +
+ +
+ Baldur's Gate 3 + ⚡ RAW PERFORMER +
+ Larian Studios · Publisher +

Gather your party and return to the Forgotten Realms in a tale of fellowship and betrayal...

+ +
+ RPG + Strategy +
+ +
+ 🎮 28 Benchmarks + ⚙️ 5 Presets + 💬 12 Comments +
+
+
+ + +
+
+ 2:3 +
+
+
+ Cyberpunk 2077 + +
+ CD Projekt Red · Publisher +

An open-world action-adventure story set in Night City...

+
+ RPG + Action +
+
+ 🎮 45 Benchmarks + ⚙️ 12 Presets + 💬 34 Comments +
+
+
+
+
diff --git a/.superpowers/brainstorm/44094-1777186296/content/search-card-final.html b/.superpowers/brainstorm/44094-1777186296/content/search-card-final.html new file mode 100644 index 0000000..7bf2b75 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/content/search-card-final.html @@ -0,0 +1,130 @@ +

Search Card — Final Design

+

Existing layout preserved. Added: Raw Performer badge, real Avg FPS, real Version. No other layout changes.

+ +
+
Local Result — With Raw Performer
+
+
+ +
+ 2:3 +
+ +
+ +
+ Baldur's Gate 3 + ⚡ RAW PERFORMER +
+ Larian Studios · Publisher +

Gather your party and return to the Forgotten Realms...

+ +
+ RPG + Strategy +
+ +
+ 🎮 28 Benchmarks + ⚙️ 5 Presets + 💬 12 Comments +
+
+ +
+
+
Deck
+
Native
+
+
+
Best FPS
+
68
+
+
+
Version
+
v4.1.1.6
+
+
+
+
+
+ +
+
Local Result — Without Raw Performer (for comparison)
+
+
+
+ 2:3 +
+
+ + Cyberpunk 2077 + CD Projekt Red · Publisher +

An open-world action-adventure story set in Night City...

+
+ RPG +
+
+ 🎮 45 Benchmarks + ⚙️ 12 Presets +
+
+ +
+
+
Deck
+
Proton
+
+
+
Best FPS
+
42
+
+
+
Version
+
v2.13
+
+
+
+
+
+ +
+
Steam-Only Result (unchanged — no local data)
+
+
+
+ 2:3 +
+
+ Elden Ring + FromSoftware · Bandai Namco +

THE NEW FANTASY ACTION RPG...

+
+ RPG + Action +
+ +
+ Steam ↗ + ProtonDB ↗ + SteamDB ↗ +
+
+ +
+
+
Deck
+
+
+
+
Best FPS
+
+
+
+
Version
+
+
+
+
+
+
diff --git a/.superpowers/brainstorm/44094-1777186296/content/stats-layouts.html b/.superpowers/brainstorm/44094-1777186296/content/stats-layouts.html new file mode 100644 index 0000000..b3928f9 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/content/stats-layouts.html @@ -0,0 +1,191 @@ +

Stats Dashboard — Layout Alternatives

+

Three layout options for the statistics section. Click the one that feels best.

+ + + + + + +
+
A
+

Featured Row + Asymmetric Grid

+

Top chart gets a larger container with summary stats beside it. Remaining charts in a flowing grid.

+ +
+ +
+
+
📈 Historical AVG FPS FEATURED
+
[Stacked Area Chart — full width of container]
+
+
+
+
Overall Avg
+
54 FPS
+
+
+
Best Device
+
OLED
+
+
+
Entries
+
42
+
+
+
+ + +
+
🎮 FPS by Upscaler & Frame Gen FULL
+
[Grouped Bar — FSR version × Frame Gen method]
+
+ + +
+
+
📊 Boxplot
+
[FPS distribution per device]
+
+
+
📉 FPS Range
+
[Low → High per entry]
+
+
+
🖥️ Devices
+
[Donut: entries per device]
+
+
+ + +
+
✅ Community Trust FULL
+
[Horizontal bar: verified + vote ratio per entry]
+
+
+
+ + + + +
+
B
+

Dashboard Cards with KPI Strip

+

Quick-glance KPI numbers at top, then a clean 2×2 grid of charts, with full-width charts breaking the rhythm where needed.

+ +
+ +
+
+
Avg FPS
+
54
+
+
+
Best
+
71
+
+
+
Worst
+
38
+
+
+
Std Dev
+
±8
+
+
+
Entries
+
42
+
+
+ + +
+
📈 Historical AVG FPS FULL
+
[Stacked Area]
+
+ + +
+
+
🎮 FPS by Upscaler & Frame Gen
+
[Grouped Bar]
+
+
+
📊 FPS Distribution (Boxplot)
+
[Boxplot per device]
+
+
+
📉 FPS Range
+
[Low → High]
+
+
+
🖥️ Entries per Device
+
[Donut]
+
+
+ + +
+
✅ Community Trust FULL
+
[Horizontal bar]
+
+
+
+ + + + +
+
C
+

Sectioned with Visual Separator

+

Divides stats into logical groups with subtle dividers. Each group has a label. Full-width charts anchor each section.

+ +
+ +
+
Performance Overview
+
+
📈 Historical AVG FPS FULL
+
[Stacked Area]
+
+
+
+
📊 FPS Distribution
+
[Boxplot]
+
+
+
📉 FPS Range
+
[Low → High]
+
+
+
+ + +
+
Technology Impact
+
+
🎮 FPS by Upscaler & Frame Gen FULL
+
[Grouped Bar]
+
+
+ + +
+
Data Coverage & Trust
+
+
+
🖥️ Devices
+
[Donut]
+
+
+
✅ Community Trust FULL
+
[Horizontal bar]
+
+
+
+
+
diff --git a/.superpowers/brainstorm/44094-1777186296/content/stats-priority.html b/.superpowers/brainstorm/44094-1777186296/content/stats-priority.html new file mode 100644 index 0000000..24d8f04 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/content/stats-priority.html @@ -0,0 +1,63 @@ +

Stats Dashboard — Chart Priority

+

Which charts should be full-width (high importance) vs half-width? Select all that you want full-width.

+ +
+
+
📊
+
+

AVG FPS Boxplot

+

Min / Q1 / Median / Q3 / Max per device. Shows spread and outliers. Core metric.

+
+
+
+
📈
+
+

Historical AVG FPS (Stacked Area)

+

FPS trend over time by Proton/SteamOS version. Shows if updates help or hurt performance.

+
+
+
+
🎮
+
+

FPS by Upscaler & Frame Gen (Grouped Bar)

+

Compare FPS across FSR versions × frame gen methods. Shows the real cost/benefit of each combo.

+
+
+
+
🖥️
+
+

Entries per Device (Donut)

+

Simple count of benchmarks per hardware. Shows data coverage.

+
+
+
+
📉
+
+

FPS Range: Low vs High (Range Bar)

+

Visualizes fpsLow to fpsHigh spread per entry. Shows consistency — tight range = stable performance.

+
+
+
+
⏱️
+
+

Load Times: SSD vs SD (Bar)

+

Compare storage load times. Only shows when data exists. Useful for games with long loads.

+
+
+
+
🐧
+
+

Proton Version Breakdown (Stacked Bar)

+

Distribution of entries by Proton version. Shows which Proton builds are most tested.

+
+
+
+
+
+

Community Trust: Verified & Votes (Horizontal Bar)

+

Shows verified count + upvote/downvote ratio per entry. Helps identify the most trusted benchmarks.

+
+
+
+ +

Charts you select will be full-width (one per row). Unselected charts will be half-width (2 per row).

diff --git a/.superpowers/brainstorm/44094-1777186296/state/server-info b/.superpowers/brainstorm/44094-1777186296/state/server-info new file mode 100644 index 0000000..2731161 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/state/server-info @@ -0,0 +1 @@ +{"type":"server-started","port":49813,"host":"127.0.0.1","url_host":"localhost","url":"http://localhost:49813","screen_dir":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content","state_dir":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/state"} diff --git a/.superpowers/brainstorm/44094-1777186296/state/server.log b/.superpowers/brainstorm/44094-1777186296/state/server.log new file mode 100644 index 0000000..f307d72 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/state/server.log @@ -0,0 +1,15 @@ +{"type":"server-started","port":49813,"host":"127.0.0.1","url_host":"localhost","url":"http://localhost:49813","screen_dir":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content","state_dir":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/state"} +{"type":"screen-added","file":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content/game-page-layout.html"} +{"type":"screen-added","file":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content/badge-naming.html"} +{"source":"user-event","type":"click","text":"A\n \n Raw Performer\n Emphasizes unassisted performance. Technical, no-nonsense. \"Raw\" signals no upscaling tricks.","choice":"raw-performer","id":null,"timestamp":1777186841487} +{"type":"screen-added","file":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content/stats-priority.html"} +{"source":"user-event","type":"click","text":"📈\n \n Historical AVG FPS (Stacked Area)\n FPS trend over time by Proton/SteamOS version. Shows if updates help or hurt performance.","choice":"historical","id":null,"timestamp":1777186897413} +{"source":"user-event","type":"click","text":"✅\n \n Community Trust: Verified & Votes (Horizontal Bar)\n Shows verified count + upvote/downvote ratio per entry. Helps identify the most trusted benchmarks.","choice":"verified-sentiment","id":null,"timestamp":1777186960801} +{"source":"user-event","type":"click","text":"🖥️\n \n Entries per Device (Donut)\n Simple count of benchmarks per hardware. Shows data coverage.","choice":"device-pie","id":null,"timestamp":1777186972946} +{"source":"user-event","type":"click","text":"🖥️\n \n Entries per Device (Donut)\n Simple count of benchmarks per hardware. Shows data coverage.","choice":"device-pie","id":null,"timestamp":1777186978613} +{"source":"user-event","type":"click","text":"🎮\n \n FPS by Upscaler & Frame Gen (Grouped Bar)\n Compare FPS across FSR versions × frame gen methods. Shows the real cost/benefit of each combo.","choice":"upscaler-bar","id":null,"timestamp":1777186980875} +{"type":"screen-added","file":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content/game-page-v2.html"} +{"type":"screen-added","file":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content/stats-layouts.html"} +{"source":"user-event","type":"click","text":"A\n Featured Row + Asymmetric Grid\n Top chart gets a larger container with summary stats beside it. Remaining charts in a flowing grid.\n\n \n \n \n \n 📈 Historical AVG FPS FEATURED\n [Stacked Area Chart — full width of container]\n \n \n \n Overall Avg\n 54 FPS\n \n \n Best Device\n OLED\n \n \n Entries\n 42\n \n \n \n\n \n \n 🎮 FPS by Upscaler & Frame Gen FULL\n [Grouped Bar — FSR version × Frame Gen method]\n \n\n \n \n \n 📊 Boxplot\n [FPS distribution per device]\n \n \n 📉 FPS Range\n [Low → High per entry]\n \n \n 🖥️ Devices\n [Donut: entries per device]\n \n \n\n \n \n ✅ Community Trust FULL\n [Horizontal bar: verified + vote ratio per entry]","choice":"a","id":null,"timestamp":1777187409898} +{"type":"screen-added","file":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content/search-badge.html"} +{"type":"screen-added","file":"/Users/adrianbonpin/Documents/Code/personal/deckyvault/.superpowers/brainstorm/44094-1777186296/content/search-card-final.html"} diff --git a/.superpowers/brainstorm/44094-1777186296/state/server.pid b/.superpowers/brainstorm/44094-1777186296/state/server.pid new file mode 100644 index 0000000..9442c77 --- /dev/null +++ b/.superpowers/brainstorm/44094-1777186296/state/server.pid @@ -0,0 +1 @@ +44103 diff --git a/app/page.tsx b/app/page.tsx index aeed0d5..831a1ce 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -39,9 +39,10 @@ export default function Landing() { DeckyVault + beta searchParams.get("q") || "") + const [searchQuery, setSearchQuery] = useState( + () => searchParams.get("q") || "", + ) const debouncedQuery = useDebounce(searchQuery, 300) const [mobileMenuOpen, setMobileMenuOpen] = useState(false) const [isFocused, setIsFocused] = useState(false) @@ -31,8 +33,7 @@ export default function Navbar() { // doesn't overwrite the URL params before it catches up. const skipNextUrlWrite = useRef(false) - const { data: session, isPending: isSessionLoading } = - useSession() + const { data: session, isPending: isSessionLoading } = useSession() const [userMenuOpen, setUserMenuOpen] = useState(false) // Sync search query with URL ?q= param @@ -207,74 +208,87 @@ export default function Navbar() { {route.title} ))} - - - {/* Desktop Auth Controls */} -
- {isSessionLoading ? ( -
- ) : session ? ( -
- - {userMenuOpen && ( - <> -
setUserMenuOpen(false)} - /> -
- + {userMenuOpen && ( + <> +
setUserMenuOpen(false) - await authClient.signOut() - }} - className='w-full flex items-center gap-2 px-3 py-2 text-sm text-[#ebe4f1]/70 hover:text-[#ebe4f1] hover:bg-white/[0.05] transition-colors' - > - - Sign out - -
- - )} -
- ) : ( - <> - +
+ +
+ + )} + + ) : ( + - Sign in - - - Sign up - - - )} -
+ + login + + + )} + + {/* Mobile Hamburger Button */}