Convert school countdown from calendar-list view to pure attendance-days countdown#25
Convert school countdown from calendar-list view to pure attendance-days countdown#25
Conversation
- Remove Express.js files (index.html, index.js, replit.nix, .replit) - Add SvelteKit app with svelte.config.js, vite.config.ts, tsconfig.json - Add src/app.html and src/app.css with responsive design - Add TypeScript types in src/lib/types.ts - Add ICS calendar parsing utilities in src/lib/utils/ical.ts - Add countdown calculation utilities in src/lib/utils/countdown.ts - Add Countdown.svelte component with live second-by-second updates - Add EventCard.svelte component for displaying upcoming events - Add SchoolDaysCounter.svelte component for school days remaining - Add +page.ts load function fetching two ICS calendars - Add +page.svelte main page with header, countdowns, event list, footer - Use @sveltejs/adapter-static for static site generation - Update .gitignore for SvelteKit (add .svelte-kit/, build/, .env) - Update README.md with full setup and deployment documentation Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning Review the following alerts detected in dependencies. According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.
|
Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
…on, next-year transition Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
…ctive-period highlight Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
🚀 Preview DeploymentYour preview is ready! https://psdtools.github.io/year-countdown/previews/copilot-create-sveltekit-countdown-app/
|
…ith fallback date Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
Co-authored-by: ParkerH27 <91337218+ParkerH27@users.noreply.github.com>
The page was functioning as a calendar (event list + misc countdowns) rather than a focused countdown to the last day of school. Additionally, the big "Days" figure was raw calendar days (weekends/holidays included), making its meaning ambiguous.
Changes
Always show a countdown (
+page.ts)load()now always returns a populatedCalendarData— fetch failure no longer yieldscalendar: nullgetLastDayFallback()→ May 22 2026 as the final fallback target; ensures the countdown renders even when the external ICS feed is unreachableeventsis always[]Countdown-only UI (
+page.svelte){#if !calendar && !error}loading gate; hero renders immediately sincecalendaris now always non-nullSchool days as the primary metric
The big "Days" number now shows attendance days (
schoolDaysRemainingfrom the bell schedule) instead of raw calendar days, with an unambiguous label:Original prompt
This pull request was created from Copilot chat.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.