Files
time_to_leave/apps/web/src/app/page.tsx
T
fegger eac4f6e216 Revamp branding, UI styling, and HAFAS integration
- Update BRAND_GUIDELINES.md with new melting clock logo concept
- Rebrand UI components with new violet-to-pink gradient color scheme
- Implement HAFAS authentication headers and GET support in route
- Update logo SVGs to match new brand guidelines
- Fix HAFAS time format to exclude millisecond padding
- Update default station to Mödling Bahnhof
- Bump workspace package versions to 1.0.0
2026-05-12 09:44:37 +02:00

32 lines
1.0 KiB
TypeScript

"use client";
import { useEventsStore } from "@/hooks/useEventsStore";
import { useOriginStation } from "@/hooks/useOriginStation";
import EventCard from "@/app/event/EventCard";
export default function Home() {
const { events } = useEventsStore();
const { station: originStation } = useOriginStation();
const upcoming = events
.filter((e) => e.eventTime >= new Date())
.sort((a, b) => a.eventTime.getTime() - b.eventTime.getTime());
return (
<main className="max-w-3xl mx-auto w-full px-4 py-6">
{upcoming.length === 0 ? (
<div className="text-center py-16 text-gray-500 dark:text-[#F4F1EA]/60">
<p className="text-2xl font-bold brand-gradient-text mb-2">No upcoming events</p>
<p className="text-sm mt-1">Use "Add Event" to add one, or import from the Calendar.</p>
</div>
) : (
<div className="space-y-4">
{upcoming.map((event) => (
<EventCard key={event.id} event={event} originStation={originStation} />
))}
</div>
)}
</main>
);
}