mirror of
https://github.com/Such-Software/such.software.git
synced 2026-10-17 05:32:05 +02:00
add vegan-iq initial pages
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
---
|
||||
title: "Vegan IQ: Test Your Plant-Based Knowledge"
|
||||
date: "2026-03-26"
|
||||
excerpt: "2000+ trivia questions across 8 categories, all backed by verified data. Now on Android and iOS."
|
||||
draft: true
|
||||
---
|
||||
|
||||
Vegan IQ is a trivia game that tests what you know about plant-based food, nutrition, and sustainability. Over 2000 questions across 8 categories, all grounded in real data from the USDA, Poore & Nemecek (2018), NIH, and FAOSTAT.
|
||||
|
||||
## Why We Built It
|
||||
|
||||
There is a lot of information out there about veganism, plant-based nutrition, and the environmental impact of food. Some of it is accurate, some of it is not. We wanted to make a game where every question is backed by verified data -- a fun way to learn real facts about what you eat and how it affects the planet.
|
||||
|
||||
No LLM-generated content. Every question traces back to a specific data source.
|
||||
|
||||
## 8 Categories
|
||||
|
||||
- **Nutrition**: macronutrients, vitamins, minerals, and dietary facts about plant-based foods
|
||||
- **Environment**: water use, land use, greenhouse gas emissions, and ecological impact of food production
|
||||
- **Ingredients**: what is and is not vegan, hidden animal products, and food labeling
|
||||
- **Food History**: origins and cultural history of plant-based foods
|
||||
- **Animal Welfare**: facts about farming practices and animal agriculture
|
||||
- **Health**: plant-based diets and health outcomes from peer-reviewed research
|
||||
- **Cooking**: techniques, substitutions, and preparation of plant-based foods
|
||||
- **Culture**: veganism around the world, traditions, and cultural practices
|
||||
|
||||
## How It Works
|
||||
|
||||
Swipe right for true, left for false. Tap your answer for multiple choice questions. Sound effects and haptic feedback make every answer feel satisfying. Track your progress locally -- no account required, no data leaves your device.
|
||||
|
||||
## Key Features
|
||||
|
||||
- **2000+ curated questions** across 8 categories
|
||||
- **Swipe & tap gameplay** -- intuitive and fast
|
||||
- **Dark and light mode** -- play however you prefer
|
||||
- **SFX & haptics** -- satisfying audio and tactile feedback
|
||||
- **Share facts** -- send interesting questions to friends
|
||||
- **Fully offline** -- all questions bundled in the app
|
||||
- **No account required** -- open and play
|
||||
|
||||
## Data Integrity
|
||||
|
||||
All questions are generated deterministically from structured data files. The data pipeline is written in Python and pulls from:
|
||||
|
||||
- **USDA FoodData Central** for nutritional composition
|
||||
- **Poore & Nemecek, Science (2018)** for environmental impact metrics
|
||||
- **NIH** for health and dietary reference data
|
||||
- **FAOSTAT** for global agricultural statistics
|
||||
|
||||
Questions are not written by an LLM. The pipeline generates them from verified numbers and facts, ensuring accuracy.
|
||||
|
||||
## Tech
|
||||
|
||||
- **Client**: Flutter (Dart), single codebase for Android and iOS
|
||||
- **Data**: Python pipeline generating JSON question assets
|
||||
- **Ads**: Google AdMob (banner, interstitial)
|
||||
- **IAP**: Apple StoreKit and Google Play Billing via in_app_purchase
|
||||
- **Storage**: shared_preferences for local score and preference data
|
||||
|
||||
## Get It
|
||||
|
||||
- [Google Play](#)
|
||||
- [App Store](#)
|
||||
|
||||
See the [Vegan IQ product page](/products/vegan-iq) for more.
|
||||
@@ -6,7 +6,7 @@ import type { Metadata } from "next";
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Products | Such Software",
|
||||
description: "Tools and applications built by Such Software. Neroswap, Webshops, Custom Websites, Smirk Wallet, Bauhaus Echo, Suchoice, and Wownero Moon Launch.",
|
||||
description: "Tools and applications built by Such Software. Neroswap, Webshops, Custom Websites, Smirk Wallet, Bauhaus Echo, Suchoice, Vegan IQ, and Wownero Moon Launch.",
|
||||
alternates: { canonical: "/products" },
|
||||
openGraph: {
|
||||
title: "Products | Such Software",
|
||||
@@ -52,6 +52,12 @@ const products = [
|
||||
description: "Stop overthinking decisions. Snap a photo, let AI read the options, spin the wheel. Plus coin flip and adventure mode. Android and iOS.",
|
||||
color: "pink",
|
||||
},
|
||||
{
|
||||
slug: "vegan-iq",
|
||||
title: "Vegan IQ",
|
||||
description: "Test your plant-based knowledge with 2000+ trivia questions across 8 categories. Verified data, swipe gameplay. Android and iOS.",
|
||||
color: "green",
|
||||
},
|
||||
{
|
||||
slug: "wownero-moon-launch",
|
||||
title: "Wownero Moon Launch",
|
||||
@@ -68,6 +74,7 @@ const colorClasses: Record<string, string> = {
|
||||
pink: "border-pink-500/30 hover:border-pink-500/60",
|
||||
orange: "border-orange-500/30 hover:border-orange-500/60",
|
||||
yellow: "border-yellow-500/30 hover:border-yellow-500/60",
|
||||
green: "border-green-500/30 hover:border-green-500/60",
|
||||
};
|
||||
|
||||
const titleColors: Record<string, string> = {
|
||||
@@ -78,6 +85,7 @@ const titleColors: Record<string, string> = {
|
||||
pink: "text-pink-600 dark:text-pink-400",
|
||||
orange: "text-orange-600 dark:text-orange-400",
|
||||
yellow: "text-yellow-600 dark:text-yellow-400",
|
||||
green: "text-green-600 dark:text-green-400",
|
||||
};
|
||||
|
||||
export default function ProductsPage() {
|
||||
|
||||
@@ -0,0 +1,100 @@
|
||||
import { Header } from "@/components/layout/header";
|
||||
import { MobileNav } from "@/components/layout/mobile-nav";
|
||||
import { Card } from "@repo/ui/components/card";
|
||||
import { Button } from "@repo/ui/components/button";
|
||||
import Link from "next/link";
|
||||
import type { Metadata } from "next";
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Vegan IQ | Such Software",
|
||||
description: "Test your plant-based knowledge with 2000+ trivia questions across 8 categories. Swipe and tap gameplay with verified data. Android and iOS.",
|
||||
alternates: { canonical: "/products/vegan-iq" },
|
||||
openGraph: {
|
||||
title: "Vegan IQ | Such Software",
|
||||
description: "Test your plant-based knowledge with 2000+ trivia questions across 8 categories. Swipe and tap gameplay with verified data. Android and iOS.",
|
||||
type: "website",
|
||||
},
|
||||
};
|
||||
|
||||
const features = [
|
||||
{ name: "2000+ Questions", description: "Curated trivia questions backed by verified data from USDA, Poore & Nemecek, NIH, and FAOSTAT. No AI-generated content." },
|
||||
{ name: "8 Categories", description: "Nutrition, environment, ingredients, food history, animal welfare, health, cooking, and culture." },
|
||||
{ name: "Swipe & Tap", description: "Swipe right for true, left for false. Tap your answer for multiple choice. Fast, intuitive gameplay." },
|
||||
{ name: "Dark & Light Mode", description: "Play in whichever theme you prefer. Automatic or manual switching." },
|
||||
{ name: "SFX & Haptics", description: "Satisfying sound effects and haptic feedback on correct and incorrect answers." },
|
||||
{ name: "Share Facts", description: "Found an interesting fact? Share it with friends directly from the app." },
|
||||
];
|
||||
|
||||
export default function VeganIqPage() {
|
||||
return (
|
||||
<main className="relative min-h-screen flex flex-col items-center bg-background text-foreground">
|
||||
<Header />
|
||||
<div id="main-content" className="z-10 w-full max-w-4xl mx-auto py-20 px-4 pb-24 md:pb-20">
|
||||
<Link href="/products" className="text-sm text-muted-foreground hover:text-foreground mb-8 inline-block">
|
||||
← Back to Products
|
||||
</Link>
|
||||
|
||||
<h1 className="text-4xl md:text-5xl font-bold mb-6 text-green-600 dark:text-green-400">
|
||||
Vegan IQ
|
||||
</h1>
|
||||
|
||||
<div className="prose dark:prose-invert max-w-none mb-12">
|
||||
<p className="text-xl text-muted-foreground leading-relaxed">
|
||||
Think you know your vegan facts? Vegan IQ puts your plant-based knowledge to the test with over 2000 trivia questions across 8 categories.
|
||||
Every question is backed by verified data from sources like the USDA, Poore & Nemecek (2018), NIH, and FAOSTAT.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="flex flex-wrap gap-4 mb-12">
|
||||
<a href="#" target="_blank" rel="noopener noreferrer">
|
||||
<Button variant="outline" size="lg">
|
||||
Google Play
|
||||
</Button>
|
||||
</a>
|
||||
<a href="#" target="_blank" rel="noopener noreferrer">
|
||||
<Button variant="outline" size="lg">
|
||||
App Store
|
||||
</Button>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<h2 className="text-2xl font-bold mb-6">Features</h2>
|
||||
<div className="grid grid-cols-1 md:grid-cols-2 gap-6 mb-12">
|
||||
{features.map((feature) => (
|
||||
<Card key={feature.name} className="glass-card border-green-500/20">
|
||||
<h3 className="text-xl font-bold mb-2">{feature.name}</h3>
|
||||
<p className="text-muted-foreground">{feature.description}</p>
|
||||
</Card>
|
||||
))}
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-2xl font-bold mb-4">Data Sources</h2>
|
||||
<div className="prose dark:prose-invert max-w-none">
|
||||
<p className="text-muted-foreground leading-relaxed">
|
||||
Every question in Vegan IQ is grounded in real data. We do not use LLMs to generate question content. Our sources include:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-2 text-muted-foreground mt-4">
|
||||
<li><strong>USDA FoodData Central</strong> — nutritional composition of plant-based foods</li>
|
||||
<li><strong>Poore & Nemecek, Science (2018)</strong> — environmental impact data for food production</li>
|
||||
<li><strong>National Institutes of Health (NIH)</strong> — health and dietary reference data</li>
|
||||
<li><strong>FAOSTAT</strong> — global food production and agricultural statistics from the UN FAO</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className="mt-16 pt-8 border-t border-border">
|
||||
<h2 className="text-2xl font-bold mb-4">Legal</h2>
|
||||
<ul className="space-y-2">
|
||||
<li>
|
||||
<Link href="/products/vegan-iq/privacy" className="text-blue-600 dark:text-blue-400 hover:underline">
|
||||
Privacy Policy
|
||||
</Link>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<MobileNav />
|
||||
</main>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,106 @@
|
||||
import { Header } from "@/components/layout/header";
|
||||
import { MobileNav } from "@/components/layout/mobile-nav";
|
||||
import Link from "next/link";
|
||||
import type { Metadata } from "next";
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Vegan IQ Privacy Policy | Such Software",
|
||||
description: "Privacy policy for the Vegan IQ application.",
|
||||
alternates: { canonical: "/products/vegan-iq/privacy" },
|
||||
};
|
||||
|
||||
export default function VeganIqPrivacyPage() {
|
||||
return (
|
||||
<main className="relative min-h-screen flex flex-col items-center bg-background text-foreground">
|
||||
<Header />
|
||||
<div id="main-content" className="z-10 w-full max-w-3xl mx-auto py-20 px-4 pb-24 md:pb-20">
|
||||
<Link href="/products/vegan-iq" className="text-sm text-muted-foreground hover:text-foreground mb-8 inline-block">
|
||||
← Back to Vegan IQ
|
||||
</Link>
|
||||
|
||||
<h1 className="text-4xl font-bold mb-8">Privacy Policy for Vegan IQ</h1>
|
||||
|
||||
<div className="prose dark:prose-invert max-w-none space-y-6">
|
||||
<p className="text-muted-foreground">Last updated: March 26, 2026</p>
|
||||
|
||||
<section>
|
||||
<h2 className="text-2xl font-semibold mt-8 mb-4">1. Introduction</h2>
|
||||
<p>
|
||||
Such Software ("we", "our", or "us") operates the Vegan IQ mobile application (the "App").
|
||||
This Privacy Policy explains how we collect, use, disclose, and safeguard your information when you use our App.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2 className="text-2xl font-semibold mt-8 mb-4">2. Information We Collect</h2>
|
||||
<h3 className="text-xl font-medium mt-4 mb-2">Local Data</h3>
|
||||
<p>
|
||||
Vegan IQ stores your score history, preferences, and game progress locally on your device using shared_preferences.
|
||||
<strong> This data never leaves your device.</strong> There are no user accounts, no server-side storage, and no leaderboards.
|
||||
We do not collect your name, email address, photos, location, or any other personal information.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-medium mt-4 mb-2">Advertising</h3>
|
||||
<p>
|
||||
We use Google AdMob to display advertisements in the App. AdMob may collect and use data, including device identifiers (such as the Android Advertising ID or iOS IDFA), IP addresses, and usage data, to provide personalized advertising.
|
||||
</p>
|
||||
<p>
|
||||
You can learn more about how Google uses information from sites or apps that use their services by visiting: <a href="https://policies.google.com/technologies/partner-sites" target="_blank" rel="noopener noreferrer" className="text-blue-600 hover:underline">Google's Privacy & Terms</a>.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-medium mt-4 mb-2">In-App Purchases</h3>
|
||||
<p>
|
||||
Vegan IQ offers in-app purchases to remove ads. Purchases are processed entirely by Apple (via StoreKit) or Google (via Google Play Billing) depending on your platform.
|
||||
We do not process or store your payment information (such as credit card numbers) directly; this is handled securely by Apple or Google.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2 className="text-2xl font-semibold mt-8 mb-4">3. How We Use Your Information</h2>
|
||||
<p>We use the information described above to:</p>
|
||||
<ul className="list-disc pl-6 space-y-2">
|
||||
<li>Serve advertisements to support the free version of the App.</li>
|
||||
<li>Process in-app purchases to remove ads.</li>
|
||||
<li>Store your game progress and preferences locally on your device.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2 className="text-2xl font-semibold mt-8 mb-4">4. Third-Party Services</h2>
|
||||
<p>
|
||||
The App uses third-party services that may collect information used to identify you.
|
||||
Link to privacy policy of third party service providers used by the app:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-2">
|
||||
<li><a href="https://policies.google.com/privacy" target="_blank" rel="noopener noreferrer" className="text-blue-600 hover:underline">Google Play Services</a></li>
|
||||
<li><a href="https://support.google.com/admob/answer/6128543?hl=en" target="_blank" rel="noopener noreferrer" className="text-blue-600 hover:underline">AdMob</a></li>
|
||||
<li><a href="https://www.apple.com/legal/privacy/" target="_blank" rel="noopener noreferrer" className="text-blue-600 hover:underline">Apple App Store</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2 className="text-2xl font-semibold mt-8 mb-4">5. Children's Privacy</h2>
|
||||
<p>
|
||||
These Services do not address anyone under the age of 13. We do not knowingly collect personally identifiable information from children under 13. In the case we discover that a child under 13 has provided us with personal information, we immediately delete this from our servers. If you are a parent or guardian and you are aware that your child has provided us with personal information, please contact us so that we will be able to do necessary actions.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2 className="text-2xl font-semibold mt-8 mb-4">6. Changes to This Privacy Policy</h2>
|
||||
<p>
|
||||
We may update our Privacy Policy from time to time. Thus, you are advised to review this page periodically for any changes. We will notify you of any changes by posting the new Privacy Policy on this page.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2 className="text-2xl font-semibold mt-8 mb-4">7. Contact Us</h2>
|
||||
<p>
|
||||
If you have any questions or suggestions about our Privacy Policy, do not hesitate to contact us at privacy@such.software.
|
||||
</p>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
<MobileNav />
|
||||
</main>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user