From 4af02612ccfb40930c598b3deb3c45be94d1acc7 Mon Sep 17 00:00:00 2001 From: ashim-hq Date: Fri, 24 Apr 2026 00:24:44 +0800 Subject: [PATCH] feat: add live GitHub star count, legal footer section, FAQ page --- apps/landing/src/app/faq/page.tsx | 105 +++++++++++++++++++++++++ apps/landing/src/components/footer.tsx | 11 ++- apps/landing/src/components/navbar.tsx | 24 +++++- 3 files changed, 137 insertions(+), 3 deletions(-) create mode 100644 apps/landing/src/app/faq/page.tsx diff --git a/apps/landing/src/app/faq/page.tsx b/apps/landing/src/app/faq/page.tsx new file mode 100644 index 00000000..0e812649 --- /dev/null +++ b/apps/landing/src/app/faq/page.tsx @@ -0,0 +1,105 @@ +"use client"; + +import { ChevronDown } from "lucide-react"; +import { useState } from "react"; + +import { FadeIn } from "@/components/fade-in"; +import { Footer } from "@/components/footer"; +import { Navbar } from "@/components/navbar"; + +const faqs = [ + { + question: "Are my files safe and private?", + answer: + "All processing happens on your own server. Your images are never sent to any external service. SnapOtter runs entirely on your infrastructure.", + }, + { + question: "Is SnapOtter really free?", + answer: + "Yes. SnapOtter is open source under AGPL-3.0 with no hidden fees, no subscription plans, no usage limits, and no premium-only features. A commercial license is available for organizations that need proprietary use.", + }, + { + question: "Do I need an internet connection?", + answer: + "No. SnapOtter runs fully offline once deployed. No external API calls are made. It works in completely air-gapped environments.", + }, + { + question: "Are there any file size or usage limitations?", + answer: + "No artificial limits. You can process as many images as you want, at any size. The only constraint is your server's hardware resources.", + }, + { + question: "What AI features are included?", + answer: + "SnapOtter includes 14 local AI models for background removal, upscaling, OCR, face detection, colorization, noise removal, photo restoration, and more. All models run on your hardware.", + }, + { + question: "What technology does SnapOtter use?", + answer: + "The backend uses Node.js with Sharp for high-performance image processing. AI features use Python with models like RealESRGAN, rembg, and PaddleOCR. The frontend is React with a REST API.", + }, + { + question: "Can I use SnapOtter in my company?", + answer: + "Yes. Under AGPL-3.0, you can use it freely as long as you comply with the license terms. For proprietary or closed-source use, a commercial license is available.", + }, + { + question: "How do I update SnapOtter?", + answer: + "Pull the latest Docker image and restart the container. Your data persists in the mounted volume.", + }, +]; + +function FaqItem({ question, answer }: { question: string; answer: string }) { + const [open, setOpen] = useState(false); + + return ( +
+ + {open &&

{answer}

} +
+ ); +} + +export default function FaqPage() { + return ( + <> + +
+
+
+ +
+

+ Frequently Asked Questions +

+

+ Everything you need to know about SnapOtter. +

+
+
+ + +
+ {faqs.map((faq) => ( + + ))} +
+
+
+
+
+