fix(landing): replace hero messages with personality-driven copy

Swap 25 dry feature bullets for 15 messages with voice -- mix of
cheeky, warm, and playful tones across privacy, simplicity, open
source, use cases, and capability themes. Interleaved rotation order
ensures theme variety for any viewing window.
This commit is contained in:
SnapOtter
2026-06-08 13:18:17 +08:00
parent 8e44c55d32
commit 1e44963f68
+15 -25
View File
@@ -4,31 +4,21 @@ import { AnimatePresence, motion } from "framer-motion";
import { useCallback, useEffect, useState } from "react";
const phrases = [
"No signups. No accounts.",
"No uploads to the cloud. Ever.",
"100% local processing.",
"Free. Forever.",
"No limits. No hidden caps.",
"Works fully offline.",
"Unlimited batch processing.",
"50+ image tools.",
"16 AI models. Your hardware.",
"Lightning fast. Built on Sharp.",
"Air-gapped ready.",
"One Docker container.",
"Open source. Always.",
"Every pixel stays on your hardware.",
"Your server. Your rules.",
"Deploys in a single docker pull.",
"The self-hosted alternative.",
"Resize, compress, convert. Locally.",
"Free image editor. No watermarks.",
"Bulk image processing. Unlimited.",
"Remove backgrounds offline.",
"Self-hosted Canva alternative.",
"No API keys needed.",
"GDPR compliant by design.",
"Works without internet.",
"Your images never leave your server. Novel concept, right?",
"One Docker pull. That's the install guide.",
"Runs offline. Even works during the apocalypse.",
"Remove backgrounds. Upscale photos. No Photoshop required.",
"Open source. Read every line if you'd like.",
"No watermarks. No 'upgrade to unlock'. Just tools.",
"We don't know what your images look like. And we'd like to keep it that way.",
"Process a thousand images at once. Nobody's counting.",
"Built by people who got tired of uploading images to strangers.",
"Compress, resize, convert. Right from your browser.",
"50 tools in a trenchcoat pretending to be one Docker container.",
"Free forever. Not 'free trial' forever.",
"No accounts. No tracking. No 'we value your privacy' banner.",
"Works on a server. Works on a laptop. Works on a Raspberry Pi.",
"Install once. Use forever. No subscription required.",
];
export function TypingCursor() {