Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 23 additions & 1 deletion src/app/app.css
Original file line number Diff line number Diff line change
Expand Up @@ -149,9 +149,31 @@ hr {
color: var(--nav-text-color);
text-decoration: none;
}
.nav-brand{
margin: 12px 40px;
font-weight: 600;
line-height: 26px;
font-size: 200%;
font-family: 'Fraunces', Georgia, 'Times New Roman', serif;
font-variation-settings: "wght" 600, "opsz" 144, "SOFT" 0, "WONK" 1;
}
.nav-brand:hover{
text-decoration: underline;
}

.navbar-content{
width: 100%;
max-width: 1100px;
margin: 0 auto;
display: flex;
align-items: center;
}

.lang{
margin: 12px 40px;
float: right;
/* Push to the right edge of the wrapper — works whether or not the brand
is present (the brand is hidden on the home page). */
margin-left: auto;
}

.lang > a{
Expand Down
61 changes: 55 additions & 6 deletions src/app/imprint/imprint.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,67 @@ export function Imprint({lang}: {lang: string}){
<>
<h2>Imprint & Privacy</h2>
<p>
This is my website, Marvin Rühe, you can reach me at marvin@server-fish.de. I strive to be as careful as possible when it comes to content and websites I link to. However, I can not be held responsible for websites I link to. If you have concerns or find questionable content please contact me.
Privacy: I do not record any information about your visit of this website. This website is hosted at GitHub, so they might log some information (Their privacy policy can be found: <a href="https://help.github.com/en/articles/github-privacy-statement">here</a>). The source code of this website is available <a href="https://github.com/Marv51/website"> here</a>.
This is my personal website. I, Marvin R&uuml;he, can be contacted at <a href="mailto:marvin@server-fish.de">marvin@server-fish.de</a>{" "}
or by post at Altweg 85, 79356 Eichstetten, Germany.
</p>
<p>
I do not collect, store, or analyze any personal data from visitors to this website; only my hosting provider
processes the technical data necessary for secure operation. This website does not
use cookies, analytics or tracking services, or embedded content from third parties.
</p>
<p>
This website is hosted via GitHub Pages. As the hosting provider, GitHub may process technical information,
such as IP addresses or server log data, when this website is accessed. As GitHub is based in the United States,
this may involve a transfer of data to the USA; GitHub is certified under the EU-US Data Privacy Framework. For more information, please refer
to <a href="https://docs.github.com/en/site-policy/privacy-policies/github-general-privacy-statement"> GitHub's Privacy Statement</a>.
</p>
<p>
Where technical data is processed as part of providing this website, this serves the secure and reliable operation
of the website. The processing is based on Art. 6(1)(f) GDPR and is in my legitimate interest to ensure the operation
and security of this website.
</p>
<p>
You have the right to request access to your personal data, as well as the right to
rectification, erasure, restriction of processing, data portability, and objection to processing. You also have the right to lodge a complaint
with a data protection supervisory authority.
</p>
<p>
The <a href="https://github.com/Marv51/website">source code of this website</a> is publicly available on GitHub.
</p>
</>
)
}
return (<>
<h2>Impressum und Datenschutz</h2>
<h2>Impressum & Datenschutz</h2>
<p>
Dies ist meine persönliche Webseite. Ich, Marvin R&uuml;he, bin erreichbar unter <a href="mailto:marvin@server-fish.de">marvin@server-fish.de</a>{" "}
oder postalisch unter Altweg 85, 79356 Eichstetten.
</p>
<p>
Ich erhebe, speichere oder analysiere keine personenbezogenen Daten von Besucher:innen dieser Webseite;
lediglich mein Hosting-Anbieter verarbeitet die für den sicheren Betrieb technisch erforderlichen Daten.
Diese Webseite verwendet keine Cookies, keine Analyse- oder Trackingdienste und keine eingebundenen Inhalte
von Drittanbietern.
</p>
<p>
Diese Webseite wird über GitHub Pages gehostet. Als Hosting-Anbieter kann GitHub beim Aufruf der Webseite
möglicherweise technische Informationen, beispielsweise IP-Adressen oder Server-Logdaten, verarbeiten. Da GitHub in den USA
ansässig ist, kann dabei eine Übermittlung von Daten in die USA erfolgen; GitHub ist unter dem EU-US Data Privacy Framework
zertifiziert. Weitere Informationen
finden Sie in der <a href="https://docs.github.com/de/site-policy/privacy-policies/github-general-privacy-statement">Datenschutzerklärung von GitHub</a>.
</p>
<p>
Soweit bei der Bereitstellung dieser Webseite technische Daten verarbeitet werden, erfolgt dies auf Grundlage von
Art. 6 Abs. 1 lit. f DSGVO. Dies liegt in meinem berechtigten Interesse, den Betrieb und die
Sicherheit dieser Webseite zu gewährleisten.
</p>
<p>
Sie haben das Recht auf Auskunft über Ihre personenbezogenen Daten sowie auf Berichtigung, Löschung, Einschränkung
der Verarbeitung, Datenübertragbarkeit und Widerspruch gegen die Verarbeitung. Zudem haben Sie das Recht, sich bei einer
Datenschutzaufsichtsbehörde zu beschweren.
</p>
<p>
Dies ist meine Webseite, Marvin R&uuml;he, man erreicht mich unter marvin (at) server-fish.de. Ich versuche m&ouml;glichst gr&uuml;ndlich bei Inhalten und Links zu sein, bin aber nicht für verlinkte Webseiten verantwortlich. Wenn Ihnen Fehler oder fragw&uuml;rdige Inhalte auffallen, bitte ich um Nachricht.
Zum Thema Datenschutz: Ich 'verfolge' Sie nicht, soll heißen ich zeichne nichts über Ihren Besuch auf dieser Webseite auf.
Diese Webseite wird von GitHub gehostet (<a href="https://help.github.com/en/articles/github-privacy-statement">GitHub privacy policy</a>), der Quellcode ist <a href="https://github.com/Marv51/website"> hier verfügbar</a>.
Der <a href="https://github.com/Marv51/website">Quellcode dieser Webseite</a> ist öffentlich auf GitHub verfügbar.
</p>
</>
)
Expand Down
19 changes: 19 additions & 0 deletions src/app/nav-brand/nav-brand.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import { Link, useLocation } from "react-router";
import { PAGES, type Lang } from "../seo-links";

/**
* Name shown on the left of the header, linking back to the language's home
* page. Hidden on the home page itself, where the hero already shows the name.
*/
export function NavBrand({ lang }: { lang: Lang }) {
const { pathname } = useLocation();
const home = lang === "de" ? PAGES.home.de : PAGES.home.en;

if (pathname === home) return null;

return (
<Link className="nav-brand" to={home}>
Marvin R&uuml;he
</Link>
);
}
6 changes: 5 additions & 1 deletion src/app/routes/layout-de.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { Imprint } from "../imprint/imprint";
import { Outlet } from "react-router";
import { Footer } from "../footer/footer";
import { LangSwitcher } from "../lang-switcher/lang-switcher";
import { NavBrand } from "../nav-brand/nav-brand";

export function meta({}: Route.MetaArgs) {
return [
Expand All @@ -12,7 +13,10 @@ export function meta({}: Route.MetaArgs) {

export default function Layout() {
return (<><div className="navbar navbar-inverse navbar-fixed-top">
<LangSwitcher />
<div className="navbar-content">
<NavBrand lang="de" />
<LangSwitcher />
</div>
</div>
<div className="container main-content">
<Outlet />
Expand Down
6 changes: 5 additions & 1 deletion src/app/routes/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { Imprint } from "../imprint/imprint";
import { Outlet } from "react-router";
import { Footer } from "../footer/footer";
import { LangSwitcher } from "../lang-switcher/lang-switcher";
import { NavBrand } from "../nav-brand/nav-brand";

export function meta({}: Route.MetaArgs) {
return [
Expand All @@ -12,7 +13,10 @@ export function meta({}: Route.MetaArgs) {

export default function Layout() {
return (<><div className="navbar navbar-inverse navbar-fixed-top">
<LangSwitcher />
<div className="navbar-content">
<NavBrand lang="en" />
<LangSwitcher />
</div>
</div>
<div className="container main-content">
<Outlet />
Expand Down