feat(frontend): scaffold SvelteKit + Tailwind with landing (part 1)

New SvelteKit app in frontend/ (minimal template, TypeScript, TailwindCSS v4).
Adds the app shell (dark music theme navbar + footer) and a landing page with
hero and feature cards. CTAs point to /login and /explore (built in later parts).

Verified: production build succeeds and the page renders with Tailwind styles
applied (checked via preview).
This commit is contained in:
2026-07-05 22:47:29 +02:00
parent 3653a350a7
commit e13bbd4782
19 changed files with 2042 additions and 0 deletions
+11
View File
@@ -0,0 +1,11 @@
<footer class="border-t border-white/5 py-8">
<div
class="mx-auto flex max-w-6xl flex-col items-center justify-between gap-4 px-6 text-sm text-neutral-500 sm:flex-row"
>
<p>© {new Date().getFullYear()} Musify · Streaming de música.</p>
<div class="flex gap-6">
<a href="/explore" class="transition hover:text-neutral-300">Explorar</a>
<a href="/login" class="transition hover:text-neutral-300">Entrar</a>
</div>
</div>
</footer>
+33
View File
@@ -0,0 +1,33 @@
<script lang="ts">
const links = [
{ href: '/', label: 'Inicio' },
{ href: '/explore', label: 'Explorar' }
];
</script>
<header class="sticky top-0 z-50 border-b border-white/5 bg-neutral-950/80 backdrop-blur">
<nav class="mx-auto flex max-w-6xl items-center justify-between px-6 py-4">
<a href="/" class="flex items-center gap-2 text-lg font-bold tracking-tight">
<span class="grid h-8 w-8 place-items-center rounded-lg bg-emerald-500 text-neutral-950">♪</span>
Musify
</a>
<div class="hidden items-center gap-8 md:flex">
{#each links as link (link.href)}
<a href={link.href} class="text-sm text-neutral-300 transition hover:text-white">{link.label}</a>
{/each}
</div>
<div class="flex items-center gap-3">
<a href="/login" class="text-sm font-medium text-neutral-300 transition hover:text-white">
Iniciar sesión
</a>
<a
href="/login"
class="rounded-full bg-emerald-500 px-4 py-2 text-sm font-semibold text-neutral-950 transition hover:bg-emerald-400"
>
Registrarse
</a>
</div>
</nav>
</header>