Seed test data + natural-palette redesign for web-ui - #1
Merged
Conversation
Generates ~4 weeks of realistic Wisconsin-backyard-bird detections (dawn/dusk activity clustering, weighted species frequency, a couple of rare recent migrants, guaranteed last-hour activity) so the web-ui dashboard has real data to build against locally. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Replace the scaffold's default shadcn palette with a 6-color natural theme (cream paper, forest ink, moss, sage, tan, clay) derived from reference designs, applied uniformly through the existing token system so every shadcn component picks it up automatically. Remove dark mode entirely: drop ThemeToggle, the theme-init script, and the leftover dark: utility classes in the vendored button/badge primitives, so there's no OS-dependent theme switching anywhere. Add IBM Plex Mono for numeric data (stat counts, timestamps, confidence) as a field-journal-style signature texture, and a small illustrated hero band (hills/treeline/sun) on the overview page as the one distinctive visual moment, matching the reference art without overdoing it elsewhere. Verified with a production build and repeated dev-server browser testing across all three routes, including mobile viewport. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
This PR adds a local-dev data seeding script for birds.db and refreshes the web-ui styling to a single natural palette while removing dark mode support across the UI.
Changes:
- Add
scripts/seed_test_data.pyto generate realistic detection rows for local development. - Redesign
web-uistyling with a unified palette + IBM Plex Mono for numeric/tabular data. - Remove dark mode (theme init script, toggle component, and remaining
dark:Tailwind usages in UI primitives).
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| web-ui/src/styles.css | Replaces prior theme tokens with a new natural palette, adds mono font token, and introduces tabular-data styling. |
| web-ui/src/routes/species.tsx | Applies tabular-data styling to date/count cells for improved numeric alignment. |
| web-ui/src/routes/index.tsx | Adds HeroBand and applies tabular-data styling to timestamps/confidence and stat card value. |
| web-ui/src/routes/detections.tsx | Applies tabular-data styling to date/time/confidence cells. |
| web-ui/src/routes/__root.tsx | Removes pre-hydration theme init script and suppressHydrationWarning now that dark mode is removed. |
| web-ui/src/components/ui/button.tsx | Removes dark:-specific Tailwind classes from button variants. |
| web-ui/src/components/ui/badge.tsx | Removes dark:-specific Tailwind classes from badge variants. |
| web-ui/src/components/ThemeToggle.tsx | Deletes the theme toggle component (dark mode removal). |
| web-ui/src/components/HeroBand.tsx | Adds the decorative SVG hero band for the overview page. |
| web-ui/src/components/Header.tsx | Removes ThemeToggle usage from the header nav. |
| scripts/seed_test_data.py | Adds a seeding script to generate realistic dev data in scripts/birds.db. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| import os | ||
| import random | ||
| import sqlite3 | ||
| from datetime import datetime, timedelta |
| return hour, minute, second | ||
|
|
||
|
|
||
| def build_row(day: datetime, common_name: str, sci_name: str, is_nocturnal: bool, override_time: datetime | None = None): |
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
scripts/seed_test_data.py, a reusable script that generates ~4 weeks of realistic BirdNET-Pi detections (dawn/dusk activity clustering, weighted Wisconsin-backyard species mix, a couple of rare recent migrants, guaranteed last-hour activity) soweb-uihas real data to build against locally. Currently seeded with 4,334 detections across 26 species.web-uiwith a single 6-color natural palette (cream paper, forest ink, moss, sage, tan, clay) pulled from reference designs, applied uniformly through the existing shadcn token system.ThemeToggle, the theme-init script, and leftoverdark:utility classes in the vendored button/badge primitives, so there's no OS-dependent theme switching anywhere.Test plan
biome checkandtsc --noEmitcleannpm run build(client + SSR + Nitro) succeeds/,/detections,/species) render correctly against seeded data, server functions return 200, nav/active-state styling works, dark-mode toggle fully removed, mobile viewport (375px) checkedCo-Authored-By: Claude Sonnet 5 noreply@anthropic.com