From 6e09725727b84dd04e26b0f404baec11817bc03c Mon Sep 17 00:00:00 2001 From: David Montero Crespo Date: Sat, 9 May 2026 03:27:40 -0300 Subject: [PATCH] feat(about): translate AboutPage chrome + CTA + footer (partial) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The visible chrome of /about now reads from i18n in all 9 locales: - Hero title + subtitle - 7 section headings (Story / How It Works / Open Source Philosophy / Creator / Recent releases / Community & Press / CTA) - Final CTA card (title, subtitle, "Open Editor" button) - Footer copy switched to t('footer.about') so it shows the AGPLv3 About-Velxio paragraph instead of the stale MIT/avr8js credit - Footer + CTA Links wrapped in localize() so /es/about's "Open Editor" routes to /es/editor Long-form prose (Story body paragraphs, Open Source Philosophy paragraphs, Creator bio, Releases blurbs, Personal-story quote, Press section) deliberately stays in English in this commit. Each is a multi-paragraph chunk that benefits from a curated translation pass rather than an inline machine pass — slate it for a follow-up. Tech-stack tags (Java, Python, React, Docker, etc.) and the creator's name + role + GitHub/LinkedIn/Medium link captions stay untranslated: all proper nouns / brand identifiers. --- frontend/src/i18n/locales/de/common.json | 17 ++++++ frontend/src/i18n/locales/en/common.json | 17 ++++++ frontend/src/i18n/locales/es/common.json | 17 ++++++ frontend/src/i18n/locales/fr/common.json | 17 ++++++ frontend/src/i18n/locales/it/common.json | 17 ++++++ frontend/src/i18n/locales/ja/common.json | 17 ++++++ frontend/src/i18n/locales/pt-br/common.json | 17 ++++++ frontend/src/i18n/locales/ru/common.json | 17 ++++++ frontend/src/i18n/locales/zh-cn/common.json | 17 ++++++ frontend/src/pages/AboutPage.tsx | 58 ++++++++------------- 10 files changed, 176 insertions(+), 35 deletions(-) diff --git a/frontend/src/i18n/locales/de/common.json b/frontend/src/i18n/locales/de/common.json index 2dc2c5d9..05f49659 100644 --- a/frontend/src/i18n/locales/de/common.json +++ b/frontend/src/i18n/locales/de/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "Über PayPal spenden" } }, + "about": { + "hero": { + "title": "Über Velxio", + "subtitle": "Ein kostenloser, quelloffener Emulator für eingebettete Systeme — entwickelt von einem einzelnen Entwickler mit Leidenschaft für Hardware und Open Source." + }, + "story": { "heading": "Die Geschichte" }, + "howItWorks": { "heading": "So funktioniert es" }, + "openSource": { "heading": "Open-Source-Philosophie" }, + "creator": { "heading": "Der Entwickler" }, + "releases": { "heading": "Aktuelle Releases" }, + "community": { "heading": "Community & Presse" }, + "cta": { + "title": "Bereit, Velxio auszuprobieren?", + "subtitle": "Keine Anmeldung. Läuft zu 100% im Browser. Kostenlos und Open Source.", + "openEditor": "Editor öffnen" + } + }, "auth": { "login": { "title": "Anmelden", diff --git a/frontend/src/i18n/locales/en/common.json b/frontend/src/i18n/locales/en/common.json index e0921587..139e0cdb 100644 --- a/frontend/src/i18n/locales/en/common.json +++ b/frontend/src/i18n/locales/en/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "Donate via PayPal" } }, + "about": { + "hero": { + "title": "About Velxio", + "subtitle": "A free, open-source embedded systems emulator — built by a single developer with a passion for hardware and open source." + }, + "story": { "heading": "The Story" }, + "howItWorks": { "heading": "How It Works" }, + "openSource": { "heading": "Open Source Philosophy" }, + "creator": { "heading": "The Creator" }, + "releases": { "heading": "Recent releases" }, + "community": { "heading": "Community & Press" }, + "cta": { + "title": "Ready to try Velxio?", + "subtitle": "No signup required. Runs 100% in your browser. Free and open source.", + "openEditor": "Open Editor" + } + }, "auth": { "login": { "title": "Sign in", diff --git a/frontend/src/i18n/locales/es/common.json b/frontend/src/i18n/locales/es/common.json index 723edfaa..20ec19cf 100644 --- a/frontend/src/i18n/locales/es/common.json +++ b/frontend/src/i18n/locales/es/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "Donar con PayPal" } }, + "about": { + "hero": { + "title": "Acerca de Velxio", + "subtitle": "Un emulador de sistemas embebidos gratuito y de código abierto — construido por un solo desarrollador con pasión por el hardware y el open source." + }, + "story": { "heading": "La historia" }, + "howItWorks": { "heading": "Cómo funciona" }, + "openSource": { "heading": "Filosofía open source" }, + "creator": { "heading": "El creador" }, + "releases": { "heading": "Versiones recientes" }, + "community": { "heading": "Comunidad y prensa" }, + "cta": { + "title": "¿Listo para probar Velxio?", + "subtitle": "Sin registro. Funciona 100% en tu navegador. Gratuito y de código abierto.", + "openEditor": "Abrir Editor" + } + }, "auth": { "login": { "title": "Iniciar sesión", diff --git a/frontend/src/i18n/locales/fr/common.json b/frontend/src/i18n/locales/fr/common.json index db45d76a..2f51bdc6 100644 --- a/frontend/src/i18n/locales/fr/common.json +++ b/frontend/src/i18n/locales/fr/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "Faire un don via PayPal" } }, + "about": { + "hero": { + "title": "À propos de Velxio", + "subtitle": "Un émulateur de systèmes embarqués gratuit et open-source — créé par un seul développeur passionné de hardware et d'open source." + }, + "story": { "heading": "L'histoire" }, + "howItWorks": { "heading": "Comment ça marche" }, + "openSource": { "heading": "Philosophie open source" }, + "creator": { "heading": "Le créateur" }, + "releases": { "heading": "Dernières versions" }, + "community": { "heading": "Communauté & presse" }, + "cta": { + "title": "Prêt à essayer Velxio ?", + "subtitle": "Aucune inscription. Fonctionne 100% dans votre navigateur. Gratuit et open source.", + "openEditor": "Ouvrir l'Éditeur" + } + }, "auth": { "login": { "title": "Se connecter", diff --git a/frontend/src/i18n/locales/it/common.json b/frontend/src/i18n/locales/it/common.json index d9d792cb..289ceaf4 100644 --- a/frontend/src/i18n/locales/it/common.json +++ b/frontend/src/i18n/locales/it/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "Dona con PayPal" } }, + "about": { + "hero": { + "title": "Informazioni su Velxio", + "subtitle": "Un emulatore di sistemi embedded gratuito e open-source — sviluppato da un singolo sviluppatore con la passione per l'hardware e l'open source." + }, + "story": { "heading": "La storia" }, + "howItWorks": { "heading": "Come funziona" }, + "openSource": { "heading": "Filosofia open source" }, + "creator": { "heading": "Il creatore" }, + "releases": { "heading": "Versioni recenti" }, + "community": { "heading": "Community & stampa" }, + "cta": { + "title": "Pronto a provare Velxio?", + "subtitle": "Nessuna registrazione. Funziona al 100% nel tuo browser. Gratuito e open source.", + "openEditor": "Apri Editor" + } + }, "auth": { "login": { "title": "Accedi", diff --git a/frontend/src/i18n/locales/ja/common.json b/frontend/src/i18n/locales/ja/common.json index 1980efe9..779451f2 100644 --- a/frontend/src/i18n/locales/ja/common.json +++ b/frontend/src/i18n/locales/ja/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "PayPal で寄付する" } }, + "about": { + "hero": { + "title": "Velxio について", + "subtitle": "ハードウェアとオープンソースに情熱を注ぐ一人の開発者が作り上げた、無料・オープンソースの組み込みシステムエミュレータです。" + }, + "story": { "heading": "ストーリー" }, + "howItWorks": { "heading": "仕組み" }, + "openSource": { "heading": "オープンソースの理念" }, + "creator": { "heading": "作者" }, + "releases": { "heading": "最新リリース" }, + "community": { "heading": "コミュニティとメディア" }, + "cta": { + "title": "Velxio を試してみませんか?", + "subtitle": "登録不要。ブラウザだけで 100% 動作。無料・オープンソース。", + "openEditor": "エディタを開く" + } + }, "auth": { "login": { "title": "サインイン", diff --git a/frontend/src/i18n/locales/pt-br/common.json b/frontend/src/i18n/locales/pt-br/common.json index 9e03cb6a..03a02155 100644 --- a/frontend/src/i18n/locales/pt-br/common.json +++ b/frontend/src/i18n/locales/pt-br/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "Doar via PayPal" } }, + "about": { + "hero": { + "title": "Sobre o Velxio", + "subtitle": "Um emulador de sistemas embarcados gratuito e de código aberto — construído por um único desenvolvedor com paixão por hardware e open source." + }, + "story": { "heading": "A história" }, + "howItWorks": { "heading": "Como funciona" }, + "openSource": { "heading": "Filosofia open source" }, + "creator": { "heading": "O criador" }, + "releases": { "heading": "Lançamentos recentes" }, + "community": { "heading": "Comunidade e imprensa" }, + "cta": { + "title": "Pronto para experimentar o Velxio?", + "subtitle": "Sem cadastro. Roda 100% no seu navegador. Gratuito e de código aberto.", + "openEditor": "Abrir Editor" + } + }, "auth": { "login": { "title": "Entrar", diff --git a/frontend/src/i18n/locales/ru/common.json b/frontend/src/i18n/locales/ru/common.json index 05a23322..009ac462 100644 --- a/frontend/src/i18n/locales/ru/common.json +++ b/frontend/src/i18n/locales/ru/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "Пожертвовать через PayPal" } }, + "about": { + "hero": { + "title": "О Velxio", + "subtitle": "Бесплатный эмулятор встраиваемых систем с открытым исходным кодом — создан одним разработчиком, увлечённым железом и open source." + }, + "story": { "heading": "История" }, + "howItWorks": { "heading": "Как это работает" }, + "openSource": { "heading": "Философия open source" }, + "creator": { "heading": "Создатель" }, + "releases": { "heading": "Последние релизы" }, + "community": { "heading": "Сообщество и пресса" }, + "cta": { + "title": "Готовы попробовать Velxio?", + "subtitle": "Без регистрации. Работает на 100% в браузере. Бесплатно и с открытым кодом.", + "openEditor": "Открыть редактор" + } + }, "auth": { "login": { "title": "Войти", diff --git a/frontend/src/i18n/locales/zh-cn/common.json b/frontend/src/i18n/locales/zh-cn/common.json index d0f41114..f984707c 100644 --- a/frontend/src/i18n/locales/zh-cn/common.json +++ b/frontend/src/i18n/locales/zh-cn/common.json @@ -77,6 +77,23 @@ "ctaPaypal": "通过 PayPal 捐赠" } }, + "about": { + "hero": { + "title": "关于 Velxio", + "subtitle": "一款免费的开源嵌入式系统模拟器 —— 由一位对硬件与开源充满热情的开发者独立打造。" + }, + "story": { "heading": "故事" }, + "howItWorks": { "heading": "工作原理" }, + "openSource": { "heading": "开源理念" }, + "creator": { "heading": "作者" }, + "releases": { "heading": "近期版本" }, + "community": { "heading": "社区与媒体" }, + "cta": { + "title": "准备好试用 Velxio 了吗?", + "subtitle": "无需注册。100% 在浏览器中运行。免费且开源。", + "openEditor": "打开编辑器" + } + }, "auth": { "login": { "title": "登录", diff --git a/frontend/src/pages/AboutPage.tsx b/frontend/src/pages/AboutPage.tsx index 288332e1..0bee085a 100644 --- a/frontend/src/pages/AboutPage.tsx +++ b/frontend/src/pages/AboutPage.tsx @@ -1,5 +1,7 @@ import { Link } from 'react-router-dom'; +import { useTranslation } from 'react-i18next'; import { AppHeader } from '../components/layout/AppHeader'; +import { useLocalizedHref } from '../i18n/useLocalizedNavigate'; import { useSEO } from '../utils/useSEO'; import { getSeoMeta } from '../seoRoutes'; import './AboutPage.css'; @@ -52,6 +54,8 @@ const IcoMedium = () => ( /* ── Component ──────────────────────────────────────── */ export const AboutPage: React.FC = () => { + const { t } = useTranslation(); + const localize = useLocalizedHref(); useSEO({ ...getSeoMeta('/about')!, jsonLd: { @@ -70,11 +74,8 @@ export const AboutPage: React.FC = () => { {/* Hero */}
-

About Velxio

-

- A free, open-source embedded systems emulator — built by a single developer with a - passion for hardware and open source. -

+

{t('about.hero.title')}

+

{t('about.hero.subtitle')}

@@ -82,7 +83,7 @@ export const AboutPage: React.FC = () => {
-

The Story

+

{t('about.story.heading')}

Velxio started as a personal exploration into how microcontroller emulators work internally — CPU instructions, memory management, peripheral timing, and low-level @@ -120,7 +121,7 @@ export const AboutPage: React.FC = () => { {/* Architecture overview */}

-

How It Works

+

{t('about.howItWorks.heading')}

@@ -182,7 +183,7 @@ export const AboutPage: React.FC = () => { {/* Open Source Philosophy */}
-

Open Source Philosophy

+

{t('about.openSource.heading')}

Velxio is 100% open source under the AGPLv3 license. No cloud dependency, no student accounts, no data leaving your network. Universities and @@ -244,7 +245,7 @@ export const AboutPage: React.FC = () => { {/* Creator */}

-

The Creator

+

{t('about.creator.heading')}

{ {/* Releases */}
-

Recent releases

+

{t('about.releases.heading')}

Latest @@ -396,7 +397,7 @@ export const AboutPage: React.FC = () => { {/* Community & Press */}
-

Community & Press

+

{t('about.community.heading')}

2,000+ @@ -466,11 +467,11 @@ export const AboutPage: React.FC = () => { {/* CTA */}
-

Ready to try Velxio?

-

No signup required. Runs 100% in your browser. Free and open source.

+

{t('about.cta.title')}

+

{t('about.cta.subtitle')}

@@ -492,27 +493,14 @@ export const AboutPage: React.FC = () => {
- GitHub + {t('header.nav.github')} - Docs - Examples - Editor - About + {t('header.nav.documentation')} + {t('header.nav.examples')} + {t('header.nav.editor')} + {t('header.nav.about')}
-

- MIT License · Powered by{' '} - - avr8js - {' '} - &{' '} - - wokwi-elements - -

+

{t('footer.about')}

);