b46dbbe889
- Astro 5 SSR (node standalone) + React, OKLCH tokens (no tailwind) - migrations/001_init.sql: full schema per 03-datenmodell-api - lib: db+migrations, crypto (AES-256-GCM), auth (argon2+signed session, ratelimit), storage (S3/MinIO, presigned URLs), openrouter (POST /v1/images, cost) - middleware: init-once + session guard + admin gate; /api/health (db+storage) - login + studio placeholder; seeds (till/lea, default recipes); Dockerfile - verified: astro build passes
22 lines
979 B
Plaintext
22 lines
979 B
Plaintext
---
|
|
import Base from '../layouts/Base.astro';
|
|
const user = Astro.locals.user!;
|
|
---
|
|
<Base title="Studio · Klarbild">
|
|
<section>
|
|
<h1 class="display">Studio</h1>
|
|
<p class="lead">Willkommen, {user.name}. Ziehe Screenshots herein, wähle ein Rezept — Klarbild macht daraus druckfertige Bilder.</p>
|
|
<div class="soon card">
|
|
<strong>Aufbau läuft.</strong>
|
|
<p>Das Fundament steht (Login, Datenbank, Objektspeicher, Health). Als Nächstes: Upload, Rezepte, Warteschlange und die Bildpipeline.</p>
|
|
</div>
|
|
</section>
|
|
<style>
|
|
.display { font-family: var(--font-display); font-size: 2rem; margin: 8px 0 6px; letter-spacing: -0.02em; }
|
|
.lead { color: var(--ink-soft); max-width: 60ch; }
|
|
.card { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
|
|
padding: 20px; box-shadow: var(--shadow); margin-top: 20px; max-width: 60ch; }
|
|
.card p { color: var(--ink-mute); margin: 6px 0 0; }
|
|
</style>
|
|
</Base>
|