ca122ad723
Deploy / deploy (push) Successful in 30s
- Unlinked, noindex page listing marker PNGs from public/set/markers (discovered at build time; filenames encode device/resolution/orientation) - Detects the current screen and offers the closest match first - One-tap full-screen viewer: wake lock, hidden controls, full grid/edges toggle, fill vs fit by aspect, back button closes, deep links via hash - Offline service worker + home-screen manifest for iPhone full screen - Marketing chrome moved into an (site) route group so /set has none Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
28 lines
888 B
TypeScript
28 lines
888 B
TypeScript
import type { Metadata, Viewport } from "next";
|
|
import MarkerPicker from "@/components/set/MarkerPicker";
|
|
import { loadMarkers } from "@/lib/markers";
|
|
|
|
// On-set screen tracking markers. Deliberately not linked from the site,
|
|
// kept out of search results and the sitemap.
|
|
export const metadata: Metadata = {
|
|
title: "Screen markers",
|
|
description: "Two Tales VFX screen tracking markers for production crews.",
|
|
robots: { index: false, follow: false },
|
|
manifest: "/set/manifest.webmanifest",
|
|
appleWebApp: { capable: true, title: "Markers", statusBarStyle: "black-translucent" },
|
|
};
|
|
|
|
export const viewport: Viewport = {
|
|
themeColor: "#000000",
|
|
viewportFit: "cover",
|
|
};
|
|
|
|
export default function SetPage() {
|
|
const { screens, extras } = loadMarkers();
|
|
return (
|
|
<main className="min-h-dvh bg-ink">
|
|
<MarkerPicker screens={screens} extras={extras} />
|
|
</main>
|
|
);
|
|
}
|