Replace the bare brand text on pages with the Gitmost logo lockup (mark + "gitmost" wordmark) and use the mark as the favicon. - add generated logo lockups (text outlined from Space Grotesk SemiBold) in dark/light ink variants; add reusable theme-aware <BrandLogo> component - use BrandLogo in the global header (mark-only on mobile, full lockup on desktop) and on auth pages, dropping the old Docmost icon + plain text - point favicon to /brand/gitmost-favicon.svg (SVG primary + PNG fallbacks); regenerate favicon/app-icon PNGs from the brand SVGs - rename app name Docmost -> Gitmost (getAppName, index.html title/apple title, manifest name); use getAppName() in the 404 title - align theme/background colors to the brand tile (#0E1117) - move brand guide and logos into docs/brand/ (canonical home) with a README, and serve runtime copies from apps/client/public/brand/
30 lines
980 B
TypeScript
30 lines
980 B
TypeScript
import { Title, Text, Button, Container, Group } from "@mantine/core";
|
|
import classes from "./error-404.module.css";
|
|
import { Link } from "react-router-dom";
|
|
import { Helmet } from "react-helmet-async";
|
|
import { useTranslation } from "react-i18next";
|
|
import { getAppName } from "@/lib/config";
|
|
|
|
export function Error404() {
|
|
const { t } = useTranslation();
|
|
|
|
return (
|
|
<>
|
|
<Helmet>
|
|
<title>{t("404 page not found")} - {getAppName()}</title>
|
|
</Helmet>
|
|
<Container className={classes.root}>
|
|
<Title className={classes.title}>{t("404 page not found")}</Title>
|
|
<Text c="dimmed" size="lg" ta="center" className={classes.description}>
|
|
{t("Sorry, we can't find the page you are looking for.")}
|
|
</Text>
|
|
<Group justify="center">
|
|
<Button component={Link} to={"/home"} variant="subtle" size="md">
|
|
{t("Take me back to homepage")}
|
|
</Button>
|
|
</Group>
|
|
</Container>
|
|
</>
|
|
);
|
|
}
|