refactor(site): english-only, remove i18n machinery

This commit is contained in:
Christian Visintin
2026-06-08 10:16:00 +02:00
parent 203a6da387
commit e381484022
20 changed files with 83 additions and 771 deletions
+14 -11
View File
@@ -5,30 +5,33 @@ import Footer from "../components/Footer.astro";
import ExplorerHero from "../components/ExplorerHero.astro";
import ProtocolStrip from "../components/ProtocolStrip.astro";
import FeatureCard from "../components/FeatureCard.astro";
import { useTranslations } from "../i18n/ui";
const locale = "en" as const;
const t = useTranslations(locale);
const features = ["handy", "cross", "custom", "bookmarks", "security", "performance"];
const features = [
{ title: "Handy UI", body: "Explore and operate on the remote and local file system with a handy UI." },
{ title: "Cross platform", body: "Runs on Windows, macOS, Linux and BSD." },
{ title: "Customizable", body: "Customize the explorer, the text editor and default options." },
{ title: "Bookmarks", body: "Connect to favourite hosts via bookmarks and recent connections." },
{ title: "Security first", body: "Store passwords in your operating system key vault." },
{ title: "Eye on performance", body: "Built with an eye on performance to keep CPU usage low." },
];
---
<Base
title="termscp — terminal file transfer & explorer for SCP/SFTP/FTP/S3/Kube/SMB/WebDAV"
description="A feature-rich terminal UI file transfer and explorer with support for SCP/SFTP/FTP/Kube/S3/WebDAV/SMB."
locale={locale}
path="/"
>
<Nav locale={locale} path="/" />
<Nav />
<main class="flex-1">
<ExplorerHero locale={locale} />
<ExplorerHero />
<section class="mx-auto max-w-5xl px-4 py-12">
<h2 class="mb-6 text-center text-xl text-text">{t("features.heading")}</h2>
<h2 class="mb-6 text-center text-xl text-text">Why termscp</h2>
<div class="grid gap-5 sm:grid-cols-2 lg:grid-cols-3">
{features.map((f) => (
<FeatureCard title={t(`features.${f}.title`)} body={t(`features.${f}.body`)} />
<FeatureCard title={f.title} body={f.body} />
))}
</div>
</section>
<ProtocolStrip locale={locale} />
<ProtocolStrip />
</main>
<Footer locale={locale} />
<Footer />
</Base>
+6 -15
View File
@@ -3,14 +3,10 @@ import Base from "../layouts/Base.astro";
import Nav from "../components/Nav.astro";
import Footer from "../components/Footer.astro";
import InstallTabs from "../components/InstallTabs.astro";
import { useTranslations, DOCS_URL } from "../i18n/ui";
const locale = "en" as const;
const t = useTranslations(locale);
import { DOCS_URL } from "../consts";
const script = "curl --proto '=https' --tlsv1.2 -sSLf https://termscp.rs/install.sh | sh";
// Verified package managers (see repo README). Cargo is universal.
const methods = [
{ id: "cargo", label: "Cargo", cmd: "cargo install termscp --locked" },
{ id: "arch", label: "Arch Linux", cmd: "pacman -S termscp" },
@@ -21,15 +17,13 @@ const methods = [
<Base
title="Install termscp"
description="Install termscp on Linux, macOS, BSD and Windows — one shell command, or via Cargo, pacman, pkgin and Chocolatey."
locale={locale}
path="/install"
>
<Nav locale={locale} path="/install" />
<Nav />
<main class="mx-auto w-full max-w-3xl flex-1 px-4 py-12">
<h1 class="text-2xl font-bold text-text">{t("install.heading")}</h1>
<p class="mt-2 text-subtext">{t("install.subtitle")}</p>
<h1 class="text-2xl font-bold text-text">Install termscp</h1>
<p class="mt-2 text-subtext">Pick your platform. One command and you're in.</p>
<!-- Primary: install script -->
<div class="mt-6 rounded-lg border border-line bg-mantle p-1">
<div class="flex items-center gap-2 border-b border-line px-3 py-2 text-xs text-overlay">
<span class="text-green">$</span> Linux · macOS · BSD
@@ -38,17 +32,14 @@ const methods = [
</div>
<p class="mt-2 text-xs text-overlay">Requires <span class="text-text">curl</span>. macOS uses Homebrew if available, otherwise builds from source.</p>
<!-- Secondary: package managers -->
<h2 class="mt-10 mb-3 text-lg text-text">Package managers</h2>
<InstallTabs methods={methods} />
<p class="mt-8 text-sm text-overlay">
Update anytime with <span class="text-green">termscp --update</span>.
</p>
<p class="mt-8 text-sm text-overlay">Update anytime with <span class="text-green">termscp --update</span>.</p>
<p class="mt-2 text-sm text-overlay">
Linux build deps: <span class="text-text">libdbus-1</span>, <span class="text-text">pkg-config</span>, <span class="text-text">libsmbclient</span>.
More details in the <a href={DOCS_URL} class="text-blue hover:underline">docs</a>.
</p>
</main>
<Footer locale={locale} />
<Footer />
</Base>