diff --git a/apps/web/app/[locale]/layout.tsx b/apps/web/app/[locale]/layout.tsx index c7fbc78..81fed1d 100644 --- a/apps/web/app/[locale]/layout.tsx +++ b/apps/web/app/[locale]/layout.tsx @@ -1,4 +1,4 @@ -import type { Metadata } from "next"; +import type { Metadata, Viewport } from "next"; import { IBM_Plex_Mono, Space_Grotesk } from "next/font/google"; import { hasLocale, NextIntlClientProvider } from "next-intl"; import { getMessages, getTranslations } from "next-intl/server"; @@ -23,35 +23,105 @@ export function generateStaticParams() { return routing.locales.map((locale) => ({ locale })); } +/** + * SEO + i18n + PWA + Social metadata + */ export async function generateMetadata({ params, }: { params: Promise<{ locale: string }>; }): Promise { const { locale: candidateLocale } = await params; + const locale = hasLocale(routing.locales, candidateLocale) ? candidateLocale : routing.defaultLocale; + const t = await getTranslations({ locale, namespace: "metadata" }); const languages = routing.locales.reduce>( - (accumulator, currentLocale) => { - accumulator[currentLocale] = `/${currentLocale}`; - return accumulator; + (acc, currentLocale) => { + acc[currentLocale] = `/${currentLocale}`; + return acc; }, {}, ); + const title = t("title"); + const description = t("description"); + return { - title: t("title"), - description: t("description"), + title, + description, + + metadataBase: new URL("https://flint.arthurp.fr"), + alternates: { canonical: `/${locale}`, languages, }, + + // Theme (mobile browser bar color) + themeColor: [ + { media: "(prefers-color-scheme: light)", color: "#ffffff" }, + { media: "(prefers-color-scheme: dark)", color: "#0a0a0a" }, + ], + + // Icons / Favicons / PWA + icons: { + icon: [ + { url: "/favicon.ico" }, + { url: "/favicon-16x16.png", sizes: "16x16", type: "image/png" }, + { url: "/favicon-32x32.png", sizes: "32x32", type: "image/png" }, + { url: "/android-chrome-192x192.png", sizes: "192x192" }, + { url: "/android-chrome-512x512.png", sizes: "512x512" }, + ], + apple: "/apple-touch-icon.png", + }, + + // PWA / iOS App mode + appleWebApp: { + capable: true, + title, + statusBarStyle: "default", + }, + + applicationName: title, + + // OpenGraph (Discord / WhatsApp / Twitter preview) + openGraph: { + type: "website", + locale, + url: `/${locale}`, + title, + description, + siteName: title, + }, + + // Twitter card + twitter: { + card: "summary_large_image", + title, + description, + }, + + // SEO control + robots: { + index: true, + follow: true, + }, }; } +/** + * Viewport (important mobile) + */ +export const viewport: Viewport = { + width: "device-width", + initialScale: 1, + themeColor: "#ffffff", +}; + export default async function LocaleLayout({ children, params, @@ -66,10 +136,15 @@ export default async function LocaleLayout({ } const messages = await getMessages(); - const direction = RTL_LOCALES.includes(locale as (typeof RTL_LOCALES)[number]) ? "rtl" : "ltr"; + + const direction = RTL_LOCALES.includes( + locale as (typeof RTL_LOCALES)[number], + ) + ? "rtl" + : "ltr"; return ( - + {children} @@ -77,4 +152,4 @@ export default async function LocaleLayout({ ); -} +} \ No newline at end of file diff --git a/apps/web/components/Logo.tsx b/apps/web/components/Logo.tsx index f9fb804..cb22d41 100644 --- a/apps/web/components/Logo.tsx +++ b/apps/web/components/Logo.tsx @@ -1,41 +1,17 @@ import { getT } from "../i18n/server"; import { Link } from "../i18n/navigation"; - import { cn } from "./ui/cn"; export default async function Logo({ className = "" }: { className?: string }) { const t = await getT(); return ( - - - - - - - - - - - + + Logo {t("common.brand")} ); -} +} \ No newline at end of file diff --git a/apps/web/locales/ar.json b/apps/web/locales/ar.json index 3d6784c..1862569 100644 --- a/apps/web/locales/ar.json +++ b/apps/web/locales/ar.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - استضافة بوتات Discord (ابتداءً من 2 يورو/شهريًا لكل بوت)", + "title": "Flint - استضافة بوتات Discord (ابتداءً من 2 يورو/شهريًا لكل بوت)", "description": "منصة SaaS متعددة المستخدمين لاستضافة وإدارة بوتات Discord الخاصة بك مع أوامر تلقائية، components v2، دعم متعدد اللغات ومتغيرات ديناميكية." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "الرئيسية", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "منصة SaaS لبوتات Discord", - "title": "Shadow - استضف بوتات Discord الخاصة بك (ابتداءً من 2 يورو/شهريًا لكل بوت)", + "title": "Flint - استضف بوتات Discord الخاصة بك (ابتداءً من 2 يورو/شهريًا لكل بوت)", "description": "استضف وأدر بوتاتك باستخدام أوامر تلقائية (prefix و slash)، components v2، مساعدة تلقائية، دعم متعدد اللغات ومتغيرات ديناميكية.", "ctaStart": "ابدأ - 2 يورو/شهريًا", "ctaLogin": "تسجيل الدخول", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "إضافة بوت", - "description": "قم بربط تطبيق Discord الخاص بك عبر OAuth وقم بتسجيله في Shadow." + "description": "قم بربط تطبيق Discord الخاص بك عبر OAuth وقم بتسجيله في Flint." }, "dashboard": { "title": "الإدارة من لوحة التحكم", @@ -109,7 +109,7 @@ "copyright": "حقوق النشر {year} {brand}" }, "login": { - "eyebrow": "Shadow - استضافة بوتات Discord", + "eyebrow": "Flint - استضافة بوتات Discord", "title": "قم بربط حساب Discord الخاص بك", "description": "قم بتسجيل الدخول عبر OAuth2 للوصول إلى مساحتك واستضافة بوتاتك.", "cta": "المتابعة باستخدام Discord" diff --git a/apps/web/locales/bn.json b/apps/web/locales/bn.json index 2f21735..9107fd5 100644 --- a/apps/web/locales/bn.json +++ b/apps/web/locales/bn.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - ডিসকর্ড বট হোস্টিং (প্রতি বট প্রতি মাসে ২ ইউরো থেকে)", + "title": "Flint - ডিসকর্ড বট হোস্টিং (প্রতি বট প্রতি মাসে ২ ইউরো থেকে)", "description": "আপনার ডিসকর্ড বট হোস্ট এবং পরিচালনা করার জন্য মাল্টি-টেন্যান্ট SaaS প্ল্যাটফর্ম, যেখানে স্বয়ংক্রিয় কমান্ড, components v2, বহু-ভাষা এবং ডায়নামিক ভেরিয়েবল রয়েছে।" }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "হোম", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "ডিসকর্ড বটের জন্য SaaS প্ল্যাটফর্ম", - "title": "Shadow - আপনার ডিসকর্ড বট হোস্ট করুন (প্রতি বট প্রতি মাসে ২ ইউরো থেকে)", + "title": "Flint - আপনার ডিসকর্ড বট হোস্ট করুন (প্রতি বট প্রতি মাসে ২ ইউরো থেকে)", "description": "স্বয়ংক্রিয় কমান্ড (prefix এবং slash), components v2, স্বয়ংক্রিয় সাহায্য, বহু-ভাষা সমর্থন এবং ডায়নামিক ভেরিয়েবলসহ আপনার বট হোস্ট এবং পরিচালনা করুন।", "ctaStart": "শুরু করুন - ২ ইউরো/মাস", "ctaLogin": "লগইন", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "একটি বট যোগ করুন", - "description": "OAuth এর মাধ্যমে আপনার Discord অ্যাপ সংযুক্ত করুন এবং Shadow-এ নিবন্ধন করুন।" + "description": "OAuth এর মাধ্যমে আপনার Discord অ্যাপ সংযুক্ত করুন এবং Flint-এ নিবন্ধন করুন।" }, "dashboard": { "title": "ড্যাশবোর্ড থেকে পরিচালনা করুন", @@ -109,7 +109,7 @@ "copyright": "কপিরাইট {year} {brand}" }, "login": { - "eyebrow": "Shadow - ডিসকর্ড বট হোস্টিং", + "eyebrow": "Flint - ডিসকর্ড বট হোস্টিং", "title": "আপনার Discord অ্যাকাউন্ট সংযুক্ত করুন", "description": "OAuth2 এর মাধ্যমে লগইন করে আপনার ড্যাশবোর্ডে প্রবেশ করুন এবং বট হোস্ট করুন।", "cta": "Discord দিয়ে চালিয়ে যান" diff --git a/apps/web/locales/de.json b/apps/web/locales/de.json index 674d28a..f75fe40 100644 --- a/apps/web/locales/de.json +++ b/apps/web/locales/de.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Hosting von Discord-Bots (ab 2 EUR/Monat pro Bot)", + "title": "Flint - Hosting von Discord-Bots (ab 2 EUR/Monat pro Bot)", "description": "Multi-Tenant-SaaS-Plattform zum Hosten und Verwalten deiner Discord-Bots mit automatischen Befehlen, Components V2, Mehrsprachigkeit und dynamischen Variablen." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Startseite", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "SaaS-Plattform für Discord-Bots", - "title": "Shadow - Hoste deine Discord-Bots (ab 2 EUR/Monat pro Bot)", + "title": "Flint - Hoste deine Discord-Bots (ab 2 EUR/Monat pro Bot)", "description": "Hoste und verwalte deine Bots mit automatischen Befehlen (Prefix und Slash), Components V2, automatischer Hilfe, Mehrsprachigkeit und dynamischen Variablen.", "ctaStart": "Starten - 2 EUR/Monat", "ctaLogin": "Anmelden", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Bot hinzufügen", - "description": "Verbinde deine Discord-Anwendung über OAuth und registriere sie in Shadow." + "description": "Verbinde deine Discord-Anwendung über OAuth und registriere sie in Flint." }, "dashboard": { "title": "Im Dashboard verwalten", @@ -109,7 +109,7 @@ "copyright": "Copyright {year} {brand}" }, "login": { - "eyebrow": "Shadow - Hosting von Discord-Bots", + "eyebrow": "Flint - Hosting von Discord-Bots", "title": "Verbinde dein Discord-Konto", "description": "Authentifiziere dich über OAuth2, um auf deinen Bereich zuzugreifen und deine Bots zu hosten.", "cta": "Mit Discord fortfahren" diff --git a/apps/web/locales/en.json b/apps/web/locales/en.json index 687a1d5..bc36066 100644 --- a/apps/web/locales/en.json +++ b/apps/web/locales/en.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Discord bot hosting (from €2/month per bot)", + "title": "Flint - Discord bot hosting (from €2/month per bot)", "description": "Multi-tenant SaaS platform to host and manage your Discord bots with automatic commands, components v2, multi-language support, and dynamic variables." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Home", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "SaaS platform for Discord bots", - "title": "Shadow - Host your Discord bots (from €2/month per bot)", + "title": "Flint - Host your Discord bots (from €2/month per bot)", "description": "Host and manage your bots with automatic commands (prefix and slash), components v2, automatic help, multi-language support, and dynamic variables.", "ctaStart": "Get started - €2/month", "ctaLogin": "Log in", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Add a bot", - "description": "Connect your Discord application via OAuth and register it in Shadow." + "description": "Connect your Discord application via OAuth and register it in Flint." }, "dashboard": { "title": "Manage from the dashboard", @@ -109,7 +109,7 @@ "copyright": "Copyright {year} {brand}" }, "login": { - "eyebrow": "Shadow - Discord bot hosting", + "eyebrow": "Flint - Discord bot hosting", "title": "Connect your Discord account", "description": "Authenticate via OAuth2 to access your workspace and host your bots.", "cta": "Continue with Discord" diff --git a/apps/web/locales/es.json b/apps/web/locales/es.json index be5b93b..10ba440 100644 --- a/apps/web/locales/es.json +++ b/apps/web/locales/es.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Alojamiento de bots de Discord (desde 2 EUR/mes por bot)", + "title": "Flint - Alojamiento de bots de Discord (desde 2 EUR/mes por bot)", "description": "Plataforma SaaS multi-tenant para alojar y gestionar tus bots de Discord con comandos automáticos, components v2, multi-idioma y variables dinámicas." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Inicio", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Plataforma SaaS para bots de Discord", - "title": "Shadow - Aloja tus bots de Discord (desde 2 EUR/mes por bot)", + "title": "Flint - Aloja tus bots de Discord (desde 2 EUR/mes por bot)", "description": "Aloja y gestiona tus bots con comandos automáticos (prefix y slash), components v2, ayuda automática, soporte multi-idioma y variables dinámicas.", "ctaStart": "Empezar - 2 EUR/mes", "ctaLogin": "Iniciar sesión", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Añadir un bot", - "description": "Conecta tu aplicación de Discord mediante OAuth y regístrala en Shadow." + "description": "Conecta tu aplicación de Discord mediante OAuth y regístrala en Flint." }, "dashboard": { "title": "Gestionar desde el panel", @@ -109,7 +109,7 @@ "copyright": "Copyright {year} {brand}" }, "login": { - "eyebrow": "Shadow - Alojamiento de bots de Discord", + "eyebrow": "Flint - Alojamiento de bots de Discord", "title": "Conecta tu cuenta de Discord", "description": "Autentícate mediante OAuth2 para acceder a tu espacio y alojar tus bots.", "cta": "Continuar con Discord" diff --git a/apps/web/locales/fr.json b/apps/web/locales/fr.json index 98ce6ce..3cb37f4 100644 --- a/apps/web/locales/fr.json +++ b/apps/web/locales/fr.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Hébergement de bots Discord (à partir de 2 € / mois par bot)", + "title": "Flint - Hébergement de bots Discord (à partir de 2 € / mois par bot)", "description": "Plateforme SaaS multi-tenant pour héberger et gérer vos bots Discord avec commandes automatiques, components v2, multi-langue et variables dynamiques." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Accueil", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Plateforme SaaS pour bots Discord", - "title": "Shadow - Hébergez vos bots Discord (à partir de 2 € / mois par bot)", + "title": "Flint - Hébergez vos bots Discord (à partir de 2 € / mois par bot)", "description": "Hébergez et gérez vos bots avec commandes automatiques (préfixe et slash), components v2, aide automatique, support multi-langue et variables dynamiques.", "ctaStart": "Commencer - 2 € / mois", "ctaLogin": "Se connecter", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Ajouter un bot", - "description": "Connectez votre application Discord via OAuth et enregistrez-la dans Shadow." + "description": "Connectez votre application Discord via OAuth et enregistrez-la dans Flint." }, "dashboard": { "title": "Gérer depuis le tableau de bord", @@ -109,7 +109,7 @@ "copyright": "Copyright {year} {brand}" }, "login": { - "eyebrow": "Shadow - Hébergement de bots Discord", + "eyebrow": "Flint - Hébergement de bots Discord", "title": "Connectez votre compte Discord", "description": "Authentifiez-vous via OAuth2 pour accéder à votre espace et héberger vos bots.", "cta": "Continuer avec Discord" diff --git a/apps/web/locales/hi.json b/apps/web/locales/hi.json index 9a5135d..de60e64 100644 --- a/apps/web/locales/hi.json +++ b/apps/web/locales/hi.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Discord बॉट होस्टिंग (प्रति बॉट 2 EUR/माह से शुरू)", + "title": "Flint - Discord बॉट होस्टिंग (प्रति बॉट 2 EUR/माह से शुरू)", "description": "अपने Discord बॉट्स को होस्ट और प्रबंधित करने के लिए मल्टी-टेनेंट SaaS प्लेटफ़ॉर्म, जिसमें ऑटोमैटिक कमांड्स, components v2, मल्टी-भाषा सपोर्ट और डायनामिक वेरिएबल्स शामिल हैं।" }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "मुखपृष्ठ", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Discord बॉट्स के लिए SaaS प्लेटफ़ॉर्म", - "title": "Shadow - अपने Discord बॉट्स होस्ट करें (प्रति बॉट 2 EUR/माह से शुरू)", + "title": "Flint - अपने Discord बॉट्स होस्ट करें (प्रति बॉट 2 EUR/माह से शुरू)", "description": "अपने बॉट्स को ऑटोमैटिक कमांड्स (prefix और slash), components v2, स्वचालित सहायता, मल्टी-भाषा सपोर्ट और डायनामिक वेरिएबल्स के साथ होस्ट और प्रबंधित करें।", "ctaStart": "शुरू करें - 2 EUR/माह", "ctaLogin": "लॉगिन करें", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "बॉट जोड़ें", - "description": "OAuth के माध्यम से अपना Discord एप्लिकेशन कनेक्ट करें और Shadow में जोड़ें।" + "description": "OAuth के माध्यम से अपना Discord एप्लिकेशन कनेक्ट करें और Flint में जोड़ें।" }, "dashboard": { "title": "डैशबोर्ड से प्रबंधन करें", @@ -109,7 +109,7 @@ "copyright": "Copyright {year} {brand}" }, "login": { - "eyebrow": "Shadow - Discord बॉट होस्टिंग", + "eyebrow": "Flint - Discord बॉट होस्टिंग", "title": "अपने Discord खाते से लॉगिन करें", "description": "अपने बॉट्स को होस्ट और प्रबंधित करने के लिए OAuth2 के माध्यम से लॉगिन करें।", "cta": "Discord के साथ जारी रखें" diff --git a/apps/web/locales/id.json b/apps/web/locales/id.json index cd41f91..b6be653 100644 --- a/apps/web/locales/id.json +++ b/apps/web/locales/id.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Hosting bot Discord (mulai dari 2 EUR/bulan per bot)", + "title": "Flint - Hosting bot Discord (mulai dari 2 EUR/bulan per bot)", "description": "Platform SaaS multi-tenant untuk meng-host dan mengelola bot Discord Anda dengan perintah otomatis, components v2, multi-bahasa, dan variabel dinamis." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Beranda", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Platform SaaS untuk bot Discord", - "title": "Shadow - Hosting bot Discord Anda (mulai dari 2 EUR/bulan per bot)", + "title": "Flint - Hosting bot Discord Anda (mulai dari 2 EUR/bulan per bot)", "description": "Hosting dan kelola bot Anda dengan perintah otomatis (prefix dan slash), components v2, bantuan otomatis, dukungan multi-bahasa, dan variabel dinamis.", "ctaStart": "Mulai - 2 EUR/bulan", "ctaLogin": "Masuk", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Tambah bot", - "description": "Hubungkan aplikasi Discord Anda melalui OAuth dan daftarkan di Shadow." + "description": "Hubungkan aplikasi Discord Anda melalui OAuth dan daftarkan di Flint." }, "dashboard": { "title": "Kelola dari dashboard", @@ -109,7 +109,7 @@ "copyright": "Hak cipta {year} {brand}" }, "login": { - "eyebrow": "Shadow - Hosting bot Discord", + "eyebrow": "Flint - Hosting bot Discord", "title": "Hubungkan akun Discord Anda", "description": "Login melalui OAuth2 untuk mengakses dashboard dan meng-host bot Anda.", "cta": "Lanjutkan dengan Discord" diff --git a/apps/web/locales/it.json b/apps/web/locales/it.json index c6b00da..05de15c 100644 --- a/apps/web/locales/it.json +++ b/apps/web/locales/it.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Hosting di bot Discord (a partire da 2 EUR/mese per bot)", + "title": "Flint - Hosting di bot Discord (a partire da 2 EUR/mese per bot)", "description": "Piattaforma SaaS multi-tenant per ospitare e gestire i tuoi bot Discord con comandi automatici, componenti v2, multi-lingua e variabili dinamiche." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Home", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Piattaforma SaaS per bot Discord", - "title": "Shadow - Ospita i tuoi bot Discord (a partire da 2 EUR/mese per bot)", + "title": "Flint - Ospita i tuoi bot Discord (a partire da 2 EUR/mese per bot)", "description": "Ospita e gestisci i tuoi bot con comandi automatici (prefix e slash), componenti v2, assistenza automatica, supporto multi-lingua e variabili dinamiche.", "ctaStart": "Inizia - 2 EUR/mese", "ctaLogin": "Accedi", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Aggiungi un bot", - "description": "Collega la tua applicazione Discord tramite OAuth e registrala in Shadow." + "description": "Collega la tua applicazione Discord tramite OAuth e registrala in Flint." }, "dashboard": { "title": "Gestisci dal dashboard", @@ -109,7 +109,7 @@ "copyright": "Copyright {year} {brand}" }, "login": { - "eyebrow": "Shadow - Hosting di bot Discord", + "eyebrow": "Flint - Hosting di bot Discord", "title": "Collega il tuo account Discord", "description": "Autenticati tramite OAuth2 per accedere al tuo spazio e ospitare i tuoi bot.", "cta": "Continua con Discord" diff --git a/apps/web/locales/ja.json b/apps/web/locales/ja.json index f2c727f..91de913 100644 --- a/apps/web/locales/ja.json +++ b/apps/web/locales/ja.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Discordボットホスティング(ボット1台あたり月額2EURから)", + "title": "Flint - Discordボットホスティング(ボット1台あたり月額2EURから)", "description": "Discordボットをホスティング・管理するためのマルチテナントSaaSプラットフォーム。自動コマンド、v2コンポーネント、多言語対応、動的変数をサポート。" }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "ホーム", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Discordボット向けSaaSプラットフォーム", - "title": "Shadow - Discordボットをホスティング(ボット1台あたり月額2EURから)", + "title": "Flint - Discordボットをホスティング(ボット1台あたり月額2EURから)", "description": "自動コマンド(プレフィックス・スラッシュ)、v2コンポーネント、自動ヘルプ、多言語対応、動的変数でボットをホスティング・管理できます。", "ctaStart": "開始 - 月額2EUR", "ctaLogin": "ログイン", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "ボットを追加", - "description": "DiscordアプリをOAuthで接続し、Shadowに登録します。" + "description": "DiscordアプリをOAuthで接続し、Flintに登録します。" }, "dashboard": { "title": "ダッシュボードで管理", @@ -109,7 +109,7 @@ "copyright": "著作権 {year} {brand}" }, "login": { - "eyebrow": "Shadow - Discordボットホスティング", + "eyebrow": "Flint - Discordボットホスティング", "title": "Discordアカウントに接続", "description": "OAuth2で認証してダッシュボードにアクセスし、ボットをホスティングします。", "cta": "Discordで続行" diff --git a/apps/web/locales/nl.json b/apps/web/locales/nl.json index 9f35576..ad8a8b6 100644 --- a/apps/web/locales/nl.json +++ b/apps/web/locales/nl.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Hosting van Discord-bots (vanaf 2 EUR/maand per bot)", + "title": "Flint - Hosting van Discord-bots (vanaf 2 EUR/maand per bot)", "description": "Multi-tenant SaaS-platform om je Discord-bots te hosten en te beheren met automatische commando's, components v2, meertaligheid en dynamische variabelen." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Home", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "SaaS-platform voor Discord-bots", - "title": "Shadow - Host je Discord-bots (vanaf 2 EUR/maand per bot)", + "title": "Flint - Host je Discord-bots (vanaf 2 EUR/maand per bot)", "description": "Host en beheer je bots met automatische commando's (prefix en slash), components v2, automatische hulp, meertalige ondersteuning en dynamische variabelen.", "ctaStart": "Begin - 2 EUR/maand", "ctaLogin": "Inloggen", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Bot toevoegen", - "description": "Koppel je Discord-app via OAuth en registreer deze in Shadow." + "description": "Koppel je Discord-app via OAuth en registreer deze in Flint." }, "dashboard": { "title": "Beheer via dashboard", @@ -109,7 +109,7 @@ "copyright": "Copyright {year} {brand}" }, "login": { - "eyebrow": "Shadow - Hosting van Discord-bots", + "eyebrow": "Flint - Hosting van Discord-bots", "title": "Verbind je Discord-account", "description": "Authenticeer via OAuth2 om toegang te krijgen tot je omgeving en je bots te hosten.", "cta": "Doorgaan met Discord" diff --git a/apps/web/locales/pl.json b/apps/web/locales/pl.json index ad7f637..adb30d2 100644 --- a/apps/web/locales/pl.json +++ b/apps/web/locales/pl.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Hosting botów Discord (od 2 EUR/miesiąc za bota)", + "title": "Flint - Hosting botów Discord (od 2 EUR/miesiąc za bota)", "description": "Wielodostępna platforma SaaS do hostowania i zarządzania botami Discord z automatycznymi komendami, komponentami v2, wielojęzycznością i dynamicznymi zmiennymi." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Strona główna", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Platforma SaaS dla botów Discord", - "title": "Shadow - Hostuj swoje boty Discord (od 2 EUR/miesiąc za bota)", + "title": "Flint - Hostuj swoje boty Discord (od 2 EUR/miesiąc za bota)", "description": "Hostuj i zarządzaj swoimi botami z automatycznymi komendami (prefix i slash), komponentami v2, automatyczną pomocą, wsparciem wielojęzycznym i dynamicznymi zmiennymi.", "ctaStart": "Rozpocznij - 2 EUR/miesiąc", "ctaLogin": "Zaloguj się", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Dodaj bota", - "description": "Połącz swoją aplikację Discord przez OAuth i zarejestruj ją w Shadow." + "description": "Połącz swoją aplikację Discord przez OAuth i zarejestruj ją w Flint." }, "dashboard": { "title": "Zarządzaj z panelu", @@ -109,7 +109,7 @@ "copyright": "Prawa autorskie {year} {brand}" }, "login": { - "eyebrow": "Shadow - Hosting botów Discord", + "eyebrow": "Flint - Hosting botów Discord", "title": "Połącz swoje konto Discord", "description": "Zaloguj się przez OAuth2, aby uzyskać dostęp do swojego panelu i hostować boty.", "cta": "Kontynuuj z Discordem" diff --git a/apps/web/locales/pt.json b/apps/web/locales/pt.json index a8943f4..535a5b0 100644 --- a/apps/web/locales/pt.json +++ b/apps/web/locales/pt.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Hospedagem de bots Discord (a partir de 2 EUR/mês por bot)", + "title": "Flint - Hospedagem de bots Discord (a partir de 2 EUR/mês por bot)", "description": "Plataforma SaaS multi-tenant para hospedar e gerenciar seus bots Discord com comandos automáticos, components v2, multi-idioma e variáveis dinâmicas." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Início", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Plataforma SaaS para bots Discord", - "title": "Shadow - Hospede seus bots Discord (a partir de 2 EUR/mês por bot)", + "title": "Flint - Hospede seus bots Discord (a partir de 2 EUR/mês por bot)", "description": "Hospede e gerencie seus bots com comandos automáticos (prefixo e slash), components v2, ajuda automática, suporte multi-idioma e variáveis dinâmicas.", "ctaStart": "Começar - 2 EUR/mês", "ctaLogin": "Entrar", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Adicionar um bot", - "description": "Conecte sua aplicação Discord via OAuth e registre-a no Shadow." + "description": "Conecte sua aplicação Discord via OAuth e registre-a no Flint." }, "dashboard": { "title": "Gerenciar pelo painel", @@ -109,7 +109,7 @@ "copyright": "Direitos autorais {year} {brand}" }, "login": { - "eyebrow": "Shadow - Hospedagem de bots Discord", + "eyebrow": "Flint - Hospedagem de bots Discord", "title": "Conecte sua conta Discord", "description": "Autentique-se via OAuth2 para acessar seu espaço e hospedar seus bots.", "cta": "Continuar com Discord" diff --git a/apps/web/locales/ru.json b/apps/web/locales/ru.json index c72aa8a..0737304 100644 --- a/apps/web/locales/ru.json +++ b/apps/web/locales/ru.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Хостинг Discord-ботов (от 2 EUR/месяц за бота)", + "title": "Flint - Хостинг Discord-ботов (от 2 EUR/месяц за бота)", "description": "Мультиарендная SaaS-платформа для хостинга и управления вашими Discord-ботами с автоматическими командами, компонентами v2, поддержкой нескольких языков и динамическими переменными." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Главная", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "SaaS-платформа для Discord-ботов", - "title": "Shadow - размещайте своих Discord-ботов (от 2 EUR/месяц за бота)", + "title": "Flint - размещайте своих Discord-ботов (от 2 EUR/месяц за бота)", "description": "Размещайте и управляйте ботами с автоматическими командами (prefix и slash), компонентами v2, автоматической помощью, поддержкой нескольких языков и динамическими переменными.", "ctaStart": "Начать - 2 EUR/месяц", "ctaLogin": "Войти", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Добавить бота", - "description": "Подключите Discord-приложение через OAuth и зарегистрируйте его в Shadow." + "description": "Подключите Discord-приложение через OAuth и зарегистрируйте его в Flint." }, "dashboard": { "title": "Управление через панель", @@ -109,7 +109,7 @@ "copyright": "Авторские права {year} {brand}" }, "login": { - "eyebrow": "Shadow - Хостинг Discord-ботов", + "eyebrow": "Flint - Хостинг Discord-ботов", "title": "Подключите свой аккаунт Discord", "description": "Войдите через OAuth2, чтобы получить доступ к панели и размещать ботов.", "cta": "Продолжить с Discord" diff --git a/apps/web/locales/tr.json b/apps/web/locales/tr.json index 00281e0..f5391e3 100644 --- a/apps/web/locales/tr.json +++ b/apps/web/locales/tr.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Discord bot barındırma (bot başına ayda 2 EUR’dan itibaren)", + "title": "Flint - Discord bot barındırma (bot başına ayda 2 EUR’dan itibaren)", "description": "Discord botlarınızı barındırmak ve yönetmek için çok kiracılı SaaS platformu; otomatik komutlar, v2 bileşenleri, çoklu dil ve dinamik değişkenler içerir." }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "Ana sayfa", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Discord botları için SaaS platformu", - "title": "Shadow - Discord botlarınızı barındırın (bot başına ayda 2 EUR’dan itibaren)", + "title": "Flint - Discord botlarınızı barındırın (bot başına ayda 2 EUR’dan itibaren)", "description": "Botlarınızı otomatik komutlar (prefix ve slash), v2 bileşenleri, otomatik yardım, çoklu dil desteği ve dinamik değişkenlerle barındırın ve yönetin.", "ctaStart": "Başla - 2 EUR/ay", "ctaLogin": "Giriş yap", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "Bot ekle", - "description": "Discord uygulamanızı OAuth ile bağlayın ve Shadow’a kaydedin." + "description": "Discord uygulamanızı OAuth ile bağlayın ve Flint’a kaydedin." }, "dashboard": { "title": "Panelden yönetin", @@ -109,7 +109,7 @@ "copyright": "Telif hakkı {year} {brand}" }, "login": { - "eyebrow": "Shadow - Discord bot barındırma", + "eyebrow": "Flint - Discord bot barındırma", "title": "Discord hesabınızla giriş yapın", "description": "Botlarınızı barındırmak ve panelinize erişmek için OAuth2 ile kimlik doğrulaması yapın.", "cta": "Discord ile devam et" diff --git a/apps/web/locales/zh.json b/apps/web/locales/zh.json index 2f7ee24..b95c2e9 100644 --- a/apps/web/locales/zh.json +++ b/apps/web/locales/zh.json @@ -1,10 +1,10 @@ { "metadata": { - "title": "Shadow - Discord 机器人托管(每个机器人每月 2 欧元起)", + "title": "Flint - Discord 机器人托管(每个机器人每月 2 欧元起)", "description": "多租户 SaaS 平台,用于托管和管理你的 Discord 机器人,支持自动命令、v2 组件、多语言和动态变量。" }, "common": { - "brand": "Shadow" + "brand": "Flint" }, "nav": { "home": "首页", @@ -34,7 +34,7 @@ }, "hero": { "kicker": "Discord 机器人 SaaS 平台", - "title": "Shadow - 托管你的 Discord 机器人(每个机器人每月 2 欧元起)", + "title": "Flint - 托管你的 Discord 机器人(每个机器人每月 2 欧元起)", "description": "托管并管理你的机器人,支持自动命令(前缀与斜杠)、v2 组件、自动帮助、多语言支持和动态变量。", "ctaStart": "开始使用 - 每月 2 欧元", "ctaLogin": "登录", @@ -91,7 +91,7 @@ "steps": { "addBot": { "title": "添加机器人", - "description": "通过 OAuth 连接你的 Discord 应用并注册到 Shadow。" + "description": "通过 OAuth 连接你的 Discord 应用并注册到 Flint。" }, "dashboard": { "title": "在控制面板管理", @@ -109,7 +109,7 @@ "copyright": "版权所有 {year} {brand}" }, "login": { - "eyebrow": "Shadow - Discord 机器人托管", + "eyebrow": "Flint - Discord 机器人托管", "title": "连接你的 Discord 账号", "description": "通过 OAuth2 登录以访问你的空间并托管机器人。", "cta": "使用 Discord 继续" diff --git a/apps/web/public/android-chrome-192x192.png b/apps/web/public/android-chrome-192x192.png new file mode 100644 index 0000000..a5f008a Binary files /dev/null and b/apps/web/public/android-chrome-192x192.png differ diff --git a/apps/web/public/android-chrome-512x512.png b/apps/web/public/android-chrome-512x512.png new file mode 100644 index 0000000..3247843 Binary files /dev/null and b/apps/web/public/android-chrome-512x512.png differ diff --git a/apps/web/public/apple-touch-icon.png b/apps/web/public/apple-touch-icon.png new file mode 100644 index 0000000..094b705 Binary files /dev/null and b/apps/web/public/apple-touch-icon.png differ diff --git a/apps/web/public/favicon-16x16.png b/apps/web/public/favicon-16x16.png new file mode 100644 index 0000000..05f26ff Binary files /dev/null and b/apps/web/public/favicon-16x16.png differ diff --git a/apps/web/public/favicon-32x32.png b/apps/web/public/favicon-32x32.png new file mode 100644 index 0000000..24649d9 Binary files /dev/null and b/apps/web/public/favicon-32x32.png differ diff --git a/apps/web/public/favicon.ico b/apps/web/public/favicon.ico new file mode 100644 index 0000000..24649d9 Binary files /dev/null and b/apps/web/public/favicon.ico differ diff --git a/apps/web/public/logo.svg b/apps/web/public/logo.svg new file mode 100644 index 0000000..03a3312 --- /dev/null +++ b/apps/web/public/logo.svg @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/web/public/manifest.json b/apps/web/public/manifest.json new file mode 100644 index 0000000..d7d1777 --- /dev/null +++ b/apps/web/public/manifest.json @@ -0,0 +1,19 @@ +{ + "name": "Your App Name", + "short_name": "Your App", + "icons": [ + { + "src": "/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} \ No newline at end of file