diff --git a/app/apple-icon.png b/app/apple-icon.png new file mode 100644 index 0000000..2009a0c Binary files /dev/null and b/app/apple-icon.png differ diff --git a/app/favicon.ico b/app/favicon.ico new file mode 100644 index 0000000..600db78 Binary files /dev/null and b/app/favicon.ico differ diff --git a/app/icon0.png b/app/icon0.png new file mode 100644 index 0000000..0b05554 Binary files /dev/null and b/app/icon0.png differ diff --git a/app/icon1.svg b/app/icon1.svg new file mode 100644 index 0000000..cdecf72 --- /dev/null +++ b/app/icon1.svg @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/app/layout.tsx b/app/layout.tsx index 45ffdd4..49050fc 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -23,6 +23,10 @@ const cinzel = Cinzel_Decorative({ export const metadata: Metadata = { title: 'Tarokka', description: 'Fortune telling for D&D’s Curse of Strahd', + appleWebApp: { + title: 'Tarokka', + statusBarStyle: 'black-translucent', + }, }; export default function RootLayout({ diff --git a/app/manifest.json b/app/manifest.json new file mode 100644 index 0000000..dbaa10d --- /dev/null +++ b/app/manifest.json @@ -0,0 +1,22 @@ +{ + "name": "Tarokka", + "short_name": "Tarokka", + "icons": [ + { + "src": "/web-app-manifest-192x192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable" + }, + { + "src": "/web-app-manifest-512x512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable" + } + ], + "theme_color": "#000000", + "background_color": "#000000", + "display": "standalone" +} + diff --git a/app/opengraph-image.png b/app/opengraph-image.png new file mode 100644 index 0000000..a98cbe4 Binary files /dev/null and b/app/opengraph-image.png differ diff --git a/app/twitter-image.png b/app/twitter-image.png new file mode 100644 index 0000000..d59449e Binary files /dev/null and b/app/twitter-image.png differ diff --git a/middleware.ts b/middleware.ts new file mode 100644 index 0000000..7482dae --- /dev/null +++ b/middleware.ts @@ -0,0 +1,25 @@ +import { NextResponse } from 'next/server'; +import type { NextRequest } from 'next/server'; + +export function middleware(request: NextRequest) { + const url = request.nextUrl; + const slug = url.pathname.slice(1); + + const blocked = [ + 'apple-icon.png', + 'favicon.ico', + 'icon0.svg', + 'icon1.png', + 'manifest.json', + 'opengraph-image.png', + 'twitter-image.png', + 'web-app-manifest-192x192.png', + 'web-app-manifest-512x512.png', + ]; + + if (blocked.includes(slug)) { + return NextResponse.rewrite(request.url); + } + + return NextResponse.next(); +} diff --git a/public/img/tarokka.png b/public/img/tarokka.png new file mode 100644 index 0000000..96e31f0 Binary files /dev/null and b/public/img/tarokka.png differ diff --git a/public/img/tarokka_1024x512.webp b/public/img/tarokka_1024x512.webp new file mode 100644 index 0000000..39a2e67 Binary files /dev/null and b/public/img/tarokka_1024x512.webp differ diff --git a/public/img/tarokka_1200x630.webp b/public/img/tarokka_1200x630.webp new file mode 100644 index 0000000..97ad485 Binary files /dev/null and b/public/img/tarokka_1200x630.webp differ diff --git a/public/img/tarokka_round_solid.png b/public/img/tarokka_round_solid.png new file mode 100644 index 0000000..de70508 Binary files /dev/null and b/public/img/tarokka_round_solid.png differ diff --git a/public/img/tarokka_round_solid.webp b/public/img/tarokka_round_solid.webp new file mode 100644 index 0000000..b68743f Binary files /dev/null and b/public/img/tarokka_round_solid.webp differ diff --git a/public/img/tarokka_transparent.png b/public/img/tarokka_transparent.png new file mode 100644 index 0000000..e863022 Binary files /dev/null and b/public/img/tarokka_transparent.png differ diff --git a/public/web-app-manifest-192x192.png b/public/web-app-manifest-192x192.png new file mode 100644 index 0000000..acae59e Binary files /dev/null and b/public/web-app-manifest-192x192.png differ diff --git a/public/web-app-manifest-512x512.png b/public/web-app-manifest-512x512.png new file mode 100644 index 0000000..2cf8bd0 Binary files /dev/null and b/public/web-app-manifest-512x512.png differ