60f886bf7a
Integriert das RAPPORT-Hosting-Angebot direkt in die bestehende Hugo-Seite
(gleicher openbureau/Hextra-Look):
- /hosting Marketing-Landing (Hero, Feature-Grid)
- /hosting-preise Abo-Übersicht (Plans aus /api/billing/plans)
- /login /register /konto Vanilla-JS-Seiten (layouts/hosting.html +
static/js/hosting-app.js), sprechen NUR mit /api
- custom.css: Karten-/Formular-/Plan-Styles im RAPPORT-Token-Set
- Navbar: 'Hosting' + 'Anmelden'
Bleibt sauber AGPL: kein Backend-Code, nur fetch('/api'). Das proprietäre
Backend (Auth/Stripe/Provisioning) liegt in RAPPORT-HOST.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
154 lines
11 KiB
HTML
154 lines
11 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="de" dir="ltr"><head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="robots" content="index, follow" />
|
||
<link rel="icon shortcut" href="/favicon.ico" sizes="32x32" />
|
||
<link rel="icon" href="/favicon.svg" type="image/svg+xml" id="favicon-svg" />
|
||
<link rel="icon" href="/favicon-16x16.png" type="image/png" sizes="16x16" />
|
||
<link rel="icon" href="/favicon-32x32.png" type="image/png" sizes="32x32" />
|
||
<link rel="apple-touch-icon" href="/apple-touch-icon.png" sizes="180x180" />
|
||
<link fetchpriority="low" href="/site.webmanifest" rel="manifest" />
|
||
<title>Konto – RAPPORT</title>
|
||
<meta name="description" content="" /><link rel="canonical" href="/konto/" itemprop="url" />
|
||
|
||
<meta property="og:title" content="Konto">
|
||
<meta
|
||
property="og:description"
|
||
content="
|
||
|
||
|
||
|
||
">
|
||
<meta
|
||
property="og:type"
|
||
content="
|
||
article
|
||
">
|
||
<meta property="og:url" content="/konto/"><meta property="article:section" content="">
|
||
|
||
|
||
|
||
|
||
<meta itemprop="name" content="Konto">
|
||
<meta itemprop="description" content="Freie Studio Management Software für Architekturbüros — Zeiterfassung, Rechnungen, Projekte, QR-Einzahlungsscheine. Tauri + React. AGPL-3.0.">
|
||
<meta name="twitter:card" content="summary">
|
||
<meta name="twitter:title" content="Konto">
|
||
<meta name="twitter:description" content="Freie Studio Management Software für Architekturbüros — Zeiterfassung, Rechnungen, Projekte, QR-Einzahlungsscheine. Tauri + React. AGPL-3.0.">
|
||
|
||
<link rel="preload" href="/css/compiled/main.min.3f70c37b0f2ce37d160ca0a36b7edfe7d6718ac312bc985e36fe9fb736850a27.css" as="style" integrity="sha256-P3DDew8s430WDKCja37f59ZxisMSvJheNv6ftzaFCic=" />
|
||
<link href="/css/compiled/main.min.3f70c37b0f2ce37d160ca0a36b7edfe7d6718ac312bc985e36fe9fb736850a27.css" rel="stylesheet" integrity="sha256-P3DDew8s430WDKCja37f59ZxisMSvJheNv6ftzaFCic=" />
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<script src="/js/main-head.min.2375b7265ea066ecb314226ce5ff17478453df5f350d34d830b3fc96fba21672.js" integrity="sha256-I3W3Jl6gZuyzFCJs5f8XR4RT3181DTTYMLP8lvuiFnI="></script>
|
||
|
||
|
||
|
||
</head>
|
||
<body>
|
||
<a href="#content" class="hx:sr-only hx:focus-visible:not-sr-only hx:focus-visible:fixed hx:focus-visible:z-50 hx:focus-visible:top-2 hx:focus-visible:left-2 hx:focus-visible:bg-primary-500 hx:focus-visible:text-white hx:focus-visible:px-4 hx:focus-visible:py-2 hx:focus-visible:rounded-md hx:focus-visible:text-sm hx:focus-visible:font-medium">Zum Inhalt springen</a><div class="hextra-nav-container hx:sticky hx:top-0 hx:z-20 hx:w-full hx:bg-transparent hx:print:hidden">
|
||
<div
|
||
class="hextra-nav-container-blur hx:pointer-events-none hx:absolute hx:z-[-1] hx:h-full hx:w-full hx:bg-white hx:dark:bg-dark hx:shadow-[0_2px_4px_rgba(0,0,0,.02),0_1px_0_rgba(0,0,0,.06)] hx:contrast-more:shadow-[0_0_0_1px_#000] hx:dark:shadow-[0_-1px_0_rgba(255,255,255,.1)_inset] hx:contrast-more:dark:shadow-[0_0_0_1px_#fff]"
|
||
></div>
|
||
|
||
<nav class="hextra-max-navbar-width hx:mx-auto hx:flex hx:items-center hx:justify-end hx:gap-2 hx:h-16 hx:px-6">
|
||
<a class="hx:flex hx:items-center hx:hover:opacity-75 hx:ltr:mr-auto hx:rtl:ml-auto" href="/">
|
||
<span class="hx:mr-2 hx:font-extrabold hx:inline hx:select-none">RAPPORT</span>
|
||
</a>
|
||
<a
|
||
title=""
|
||
href="/docs"
|
||
|
||
class="hx:text-sm hx:contrast-more:text-gray-700 hx:contrast-more:dark:text-gray-100 hx:relative hx:-ml-2 hx:hidden hx:whitespace-nowrap hx:p-2 hx:md:inline-flex hx:items-center hx:gap-1 hx:text-gray-600 hx:hover:text-gray-800 hx:dark:text-gray-400 hx:dark:hover:text-gray-200"
|
||
><span class="hx:text-center">Dokumentation</span>
|
||
</a><a
|
||
title=""
|
||
href="/features"
|
||
|
||
class="hx:text-sm hx:contrast-more:text-gray-700 hx:contrast-more:dark:text-gray-100 hx:relative hx:-ml-2 hx:hidden hx:whitespace-nowrap hx:p-2 hx:md:inline-flex hx:items-center hx:gap-1 hx:text-gray-600 hx:hover:text-gray-800 hx:dark:text-gray-400 hx:dark:hover:text-gray-200"
|
||
><span class="hx:text-center">Features</span>
|
||
</a><a
|
||
title=""
|
||
href="/downloads"
|
||
|
||
class="hx:text-sm hx:contrast-more:text-gray-700 hx:contrast-more:dark:text-gray-100 hx:relative hx:-ml-2 hx:hidden hx:whitespace-nowrap hx:p-2 hx:md:inline-flex hx:items-center hx:gap-1 hx:text-gray-600 hx:hover:text-gray-800 hx:dark:text-gray-400 hx:dark:hover:text-gray-200"
|
||
><span class="hx:text-center">Downloads</span>
|
||
</a><a
|
||
title=""
|
||
href="/server"
|
||
|
||
class="hx:text-sm hx:contrast-more:text-gray-700 hx:contrast-more:dark:text-gray-100 hx:relative hx:-ml-2 hx:hidden hx:whitespace-nowrap hx:p-2 hx:md:inline-flex hx:items-center hx:gap-1 hx:text-gray-600 hx:hover:text-gray-800 hx:dark:text-gray-400 hx:dark:hover:text-gray-200"
|
||
><span class="hx:text-center">Server</span>
|
||
</a><a
|
||
title=""
|
||
href="/hosting"
|
||
|
||
class="hx:text-sm hx:contrast-more:text-gray-700 hx:contrast-more:dark:text-gray-100 hx:relative hx:-ml-2 hx:hidden hx:whitespace-nowrap hx:p-2 hx:md:inline-flex hx:items-center hx:gap-1 hx:text-gray-600 hx:hover:text-gray-800 hx:dark:text-gray-400 hx:dark:hover:text-gray-200"
|
||
><span class="hx:text-center">Hosting</span>
|
||
</a><a
|
||
title=""
|
||
href="/faq"
|
||
|
||
class="hx:text-sm hx:contrast-more:text-gray-700 hx:contrast-more:dark:text-gray-100 hx:relative hx:-ml-2 hx:hidden hx:whitespace-nowrap hx:p-2 hx:md:inline-flex hx:items-center hx:gap-1 hx:text-gray-600 hx:hover:text-gray-800 hx:dark:text-gray-400 hx:dark:hover:text-gray-200"
|
||
><span class="hx:text-center">FAQ</span>
|
||
</a><div class="hextra-search-wrapper hx:relative hx:md:w-64">
|
||
<div class="hx:relative hx:flex hx:items-center hx:text-gray-900 hx:contrast-more:text-gray-800 hx:dark:text-gray-300 hx:contrast-more:dark:text-gray-300">
|
||
<input
|
||
placeholder="Suchen..."
|
||
aria-label="Suchen..."
|
||
class="hextra-search-input hx:hextra-focus-visible hx:block hx:w-full hx:appearance-none hx:rounded-lg hx:px-3 hx:py-2 hx:transition-colors hx:text-base hx:leading-tight hx:md:text-sm hx:bg-black/[.05] hx:dark:bg-gray-50/10 hx:focus-visible:bg-white hx:dark:focus-visible:bg-dark hx:placeholder:text-gray-500 hx:dark:placeholder:text-gray-400 hx:contrast-more:border hx:contrast-more:border-current"
|
||
type="search"
|
||
autocomplete="off"
|
||
value=""
|
||
spellcheck="false"
|
||
/>
|
||
<kbd
|
||
class="hx:absolute hx:my-1.5 hx:select-none hx:ltr:right-1.5 hx:rtl:left-1.5 hx:h-5 hx:rounded-sm hx:bg-white hx:px-1.5 hx:font-mono hx:text-[10px] hx:font-medium hx:text-gray-500 hx:border hx:border-gray-200 hx:dark:border-gray-100/20 hx:dark:bg-dark/50 hx:contrast-more:border-current hx:contrast-more:text-current hx:contrast-more:dark:border-current hx:items-center hx:gap-1 hx:transition-opacity hx:pointer-events-none hx:hidden hx:sm:flex"
|
||
>
|
||
CTRL K
|
||
</kbd>
|
||
</div>
|
||
|
||
<div>
|
||
<ul
|
||
class="hextra-search-results hextra-scrollbar hx:hidden hx:border hx:border-gray-200 hx:bg-white hx:text-gray-100 hx:dark:border-neutral-800 hx:dark:bg-neutral-900 hx:absolute hx:top-full hx:z-20 hx:mt-2 hx:overflow-auto hx:overscroll-contain hx:rounded-xl hx:py-2.5 hx:shadow-xl hx:max-h-[min(calc(50vh-11rem-env(safe-area-inset-bottom)),400px)] hx:md:max-h-[min(calc(100vh-5rem-env(safe-area-inset-bottom)),400px)] hx:inset-x-0 hx:ltr:md:left-auto hx:rtl:md:right-auto hx:contrast-more:border hx:contrast-more:border-gray-900 hx:contrast-more:dark:border-gray-50 hx:w-screen hx:min-h-[100px] hx:max-w-[min(calc(100vw-2rem),calc(100%+20rem))]"
|
||
aria-label="Suchergebnisse"
|
||
style="transition: max-height 0.2s ease 0s;"
|
||
></ul>
|
||
<div class="hextra-search-status hx:sr-only" aria-live="polite" role="status"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<a class="hx:p-2 hx:text-current" target="_blank" rel="noreferrer" href="https://git.kgva.ch/karim/RAPPORT" title="Gitea"><svg height=24 fill="currentColor" viewBox="3 3 18 18">
|
||
<path d="M12 3C7.0275 3 3 7.12937 3 12.2276C3 16.3109 5.57625 19.7597 9.15374 20.9824C9.60374 21.0631 9.77249 20.7863 9.77249 20.5441C9.77249 20.3249 9.76125 19.5982 9.76125 18.8254C7.5 19.2522 6.915 18.2602 6.735 17.7412C6.63375 17.4759 6.19499 16.6569 5.8125 16.4378C5.4975 16.2647 5.0475 15.838 5.80124 15.8264C6.51 15.8149 7.01625 16.4954 7.18499 16.7723C7.99499 18.1679 9.28875 17.7758 9.80625 17.5335C9.885 16.9337 10.1212 16.53 10.38 16.2993C8.3775 16.0687 6.285 15.2728 6.285 11.7432C6.285 10.7397 6.63375 9.9092 7.20749 9.26326C7.1175 9.03257 6.8025 8.08674 7.2975 6.81794C7.2975 6.81794 8.05125 6.57571 9.77249 7.76377C10.4925 7.55615 11.2575 7.45234 12.0225 7.45234C12.7875 7.45234 13.5525 7.55615 14.2725 7.76377C15.9937 6.56418 16.7475 6.81794 16.7475 6.81794C17.2424 8.08674 16.9275 9.03257 16.8375 9.26326C17.4113 9.9092 17.76 10.7281 17.76 11.7432C17.76 15.2843 15.6563 16.0687 13.6537 16.2993C13.98 16.5877 14.2613 17.1414 14.2613 18.0065C14.2613 19.2407 14.25 20.2326 14.25 20.5441C14.25 20.7863 14.4188 21.0746 14.8688 20.9824C16.6554 20.364 18.2079 19.1866 19.3078 17.6162C20.4077 16.0457 20.9995 14.1611 21 12.2276C21 7.12937 16.9725 3 12 3Z"></path>
|
||
</svg>
|
||
<span class="hx:sr-only">Gitea</span>
|
||
</a><button type="button" aria-label="Menü" aria-expanded="false" class="hextra-hamburger-menu hx:cursor-pointer hx:-mr-2 hx:rounded-sm hx:p-2 hx:active:bg-gray-400/20 hx:md:hidden hx:hextra-focus-visible-inset"><svg height=24 fill="none" viewBox="0 0 24 24" stroke="currentColor"><g><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 8H20"></path></g><g><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16H20"></path></g></svg></button>
|
||
</nav>
|
||
</div>
|
||
|
||
<div class="hosting-wrap">
|
||
<div id="hosting-root"
|
||
data-page="konto"
|
||
data-title="Konto"></div>
|
||
</div>
|
||
<script src="/js/hosting-app.js"></script>
|
||
|
||
<footer class="hextra-footer hx:bg-gray-100 hx:pb-[env(safe-area-inset-bottom)] hx:dark:bg-neutral-900 hx:print:bg-transparent"><div class="hextra-custom-footer hextra-max-footer-width hx:mx-auto hx:pl-[max(env(safe-area-inset-left),1.5rem)] hx:pr-[max(env(safe-area-inset-right),1.5rem)] hx:text-gray-600 hx:dark:text-gray-400"></div><div
|
||
class="hextra-max-footer-width hx:mx-auto hx:flex hx:justify-center hx:py-12 hx:pl-[max(env(safe-area-inset-left),1.5rem)] hx:pr-[max(env(safe-area-inset-right),1.5rem)] hx:text-gray-600 hx:dark:text-gray-400 hx:md:justify-start"
|
||
>
|
||
<div class="hx:flex hx:w-full hx:flex-col hx:items-center hx:sm:items-start"><div class="hx:mt-6 hx:text-xs">© 2026 <a href="https://git.kgva.ch/karim/RAPPORT"target="_blank" rel="noopener">RAPPORT<svg class="hx:inline hx:rtl:rotate-270 hx:align-baseline" height="1em" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
||
<path d="m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853" stroke-linecap="round" stroke-linejoin="round"/>
|
||
</svg></a> · <a href="/lizenz/">AGPL-3.0</a> · Teil von <a href="/lizenz/#openbureau">OpenBureau</a></div></div>
|
||
</div></footer>
|
||
|
||
<script defer src="/js/main.min.87785fd96557e898756188ba90bc3e2b22faddb10ae258b4d77bdb1c45dfef9e.js" integrity="sha256-h3hf2WVX6Jh1YYi6kLw+KyL63bEK4li013vbHEXf754="></script>
|
||
<script defer src="/js/flexsearch.433e941a8a573ebb9931fc16fc75266ab6b93f569ac2fb4f3dc66882e0416f4c.js" integrity="sha256-Qz6UGopXPruZMfwW/HUmara5P1aawvtPPcZoguBBb0w=" crossorigin="anonymous"></script><script defer src="/de.search.min.e433191e26d61d7cc2f542972a01887353cb627a1eff647e8683b01439c4dee5.js" integrity="sha256-5DMZHibWHXzC9UKXKgGIc1PLYnoe/2R+hoOwFDnE3uU="></script>
|
||
</body>
|
||
</html>
|