Compare commits
2 Commits
b9cebd46d5
...
24e4e3dfa5
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
24e4e3dfa5 | ||
|
|
f4e953ecd1 |
12
README.md
12
README.md
@@ -17,11 +17,12 @@ Eine Web-App inspiriert von Heardle, bei der Nutzer täglich einen Song anhand k
|
||||
- Anzeige des Covers nach Spielende (Sieg/Niederlage).
|
||||
- Automatische Migration bestehender Songs.
|
||||
- **Teilen-Funktion:** Ergebnisse können als Emoji-Grid geteilt werden.
|
||||
- **PWA Support:** Installierbar als App auf Desktop und Mobilgeräten (Manifest & Icons).
|
||||
- **Persistenz:** Spielstatus wird lokal im Browser gespeichert.
|
||||
|
||||
## Tech Stack
|
||||
|
||||
- **Framework:** Next.js 14 (App Router)
|
||||
- **Framework:** Next.js 16 (App Router)
|
||||
- **Styling:** Vanilla CSS
|
||||
- **Datenbank:** SQLite (via Prisma ORM)
|
||||
- **Deployment:** Docker & Docker Compose
|
||||
@@ -39,7 +40,14 @@ Eine Web-App inspiriert von Heardle, bei der Nutzer täglich einen Song anhand k
|
||||
npx prisma db push
|
||||
```
|
||||
|
||||
3. Entwicklungsserver starten:
|
||||
|
||||
3. **Optional: Cover-Bilder migrieren:**
|
||||
Falls MP3-Dateien ohne Cover in der Datenbank sind:
|
||||
```bash
|
||||
node scripts/migrate-covers.mjs
|
||||
```
|
||||
|
||||
4. Entwicklungsserver starten:
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { Metadata } from "next";
|
||||
import type { Metadata, Viewport } from "next";
|
||||
import { Geist, Geist_Mono } from "next/font/google";
|
||||
import "./globals.css";
|
||||
|
||||
@@ -17,6 +17,13 @@ export const metadata: Metadata = {
|
||||
description: "Daily music guessing game - Guess the song from short audio clips",
|
||||
};
|
||||
|
||||
export const viewport: Viewport = {
|
||||
themeColor: "#000000",
|
||||
width: "device-width",
|
||||
initialScale: 1,
|
||||
maximumScale: 1,
|
||||
};
|
||||
|
||||
export default function RootLayout({
|
||||
children,
|
||||
}: Readonly<{
|
||||
|
||||
20
app/manifest.ts
Normal file
20
app/manifest.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import type { MetadataRoute } from 'next'
|
||||
|
||||
export default function manifest(): MetadataRoute.Manifest {
|
||||
return {
|
||||
name: 'Hördle',
|
||||
short_name: 'Hördle',
|
||||
description: 'Daily music guessing game - Guess the song from short audio clips',
|
||||
start_url: '/',
|
||||
display: 'standalone',
|
||||
background_color: '#ffffff',
|
||||
theme_color: '#000000',
|
||||
icons: [
|
||||
{
|
||||
src: '/favicon.ico',
|
||||
sizes: 'any',
|
||||
type: 'image/x-icon',
|
||||
},
|
||||
],
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user