move to top banner
This commit is contained in:
@@ -1,18 +1,17 @@
|
||||
# Federated Computer — Hugo Site
|
||||
|
||||
A Hugo template for the Federated Computer site, laid out like
|
||||
[supermemory.ai](https://supermemory.ai): a sticky left rail (logo, the
|
||||
site's pages, Start Now / Sign In, and an "On this page" index of the
|
||||
current page's sections) beside a single narrow reading column. White
|
||||
page, near-black ink, one electric blue (`#0562ef`), hairline rules,
|
||||
square corners, no shadows. The product's four layers
|
||||
(Federated Core → Software Library → Agent Sandbox → Data & Controls)
|
||||
recur as stacked bars — in the blue hero "field", the layer-fit panels,
|
||||
and the closing call to action.
|
||||
[nebius.com](https://nebius.com): a sticky dark navy top bar with dropdown
|
||||
menus, a full-bleed navy hero (copy left, a visual right), then full-width
|
||||
bands that alternate white and light grey inside a centered 1280px
|
||||
container. Big, tight Inter headlines, rounded filled cards, a lime primary
|
||||
button (`#e0ff4f`) and a violet accent (`#614efa`). Stats, the closing call
|
||||
to action, and the footer return to navy. Copy still to be written is
|
||||
filled with "lorem ipsum".
|
||||
|
||||
## Requirements
|
||||
|
||||
- [Hugo](https://gohugo.io/) (extended version). Tested on v0.123.7.
|
||||
- [Hugo](https://gohugo.io/) (extended version), recent enough to have `hugo.Data`. Tested on v0.167.0.
|
||||
|
||||
## Running it locally
|
||||
|
||||
@@ -48,13 +47,13 @@ partial in `layouts/partials/sections/`.
|
||||
Any section can take:
|
||||
- `id: "some-id"` — anchor for links (e.g. `/start-now/#pricing`). Without
|
||||
one, the id is made from `toc`, `kicker`, or `headline`.
|
||||
- `toc: "Short label"` — the label for the rail's "On this page" index
|
||||
(defaults to the kicker, then the headline). Sections without any of
|
||||
these, plus `hero`, `divider`, and `final-cta`, are left out of the index.
|
||||
|
||||
Every section opens on a hairline rule, so the older `bordered`, `tinted`,
|
||||
and `dark` options are accepted but no longer change the look. `final-cta`
|
||||
always renders as the dark closing plate.
|
||||
Sections alternate white and grey bands automatically (cards inside take
|
||||
the opposite tone), so the older `bordered`, `tinted`, and `dark` options
|
||||
are accepted but no longer change the look. `stats` always renders as a
|
||||
navy band; `final-cta` always renders as the navy closing band. A `text`
|
||||
section with a heading puts it on the left and the copy on the right; one
|
||||
without a heading renders as a large statement.
|
||||
|
||||
### Customer paths (Solutions)
|
||||
|
||||
@@ -82,11 +81,15 @@ New section types:
|
||||
- `savings` — a bar comparison (`bars`: `name`, `amount`, `highlight`) and a savings calculator (`apps`: `name`, `cost`, `perSeat`, `selected`; compared with `federatedAnnual`) (Pricing)
|
||||
- `stats` values that start with a number ("80%+", "100+") count up when scrolled into view
|
||||
- `quote` takes one `text`/`cite`, or several as `items`. With `cards: true`, items render as a two-column testimonial grid: `text`, `name`, optional `role` and `photo` (initials show when there's no photo). Customer headshots live in `static/images/customers/` (home page). `savings:` adds a compact savings calculator below the quotes: it picks the named `apps` (and ticks `selected`) out of the `savings` section on the page at `from` (e.g. `/pricing`), so app prices live in one place; `more` links to the full calculator
|
||||
- `logos` — a logo wall. `source: "apps"` fills it from `data/app_wall.yaml` (home); otherwise `items` of `name` + optional `url`
|
||||
- `cards` — a grid of rounded cards: `items` with `title`, `body`, optional `label`, `image`, `link`/`linktext`; `visual: true` draws a gradient panel where there's no image; `columns: 2` or `3` fixes the grid
|
||||
- `news` — "What's new" cards: `items` with `tag` (Blog, Video, Event…), `title`, `date`, `url`, optional `image` (home; lorem ipsum for now)
|
||||
- `banner` — an announcement plate: `badge`, `kicker`, `headline`, `body`, `ctas` (home; lorem ipsum for now)
|
||||
- `app-directory` items can also take `page:` — the app's own page on this site
|
||||
- `hero` accepts `log:` — a list of lines (`tag` + `text`; `think: true` for a greyed reasoning step with a spinner and a pause; `done: true` to close the run) typed out in a fixed-height console window that scrolls like a terminal, as an agent's activity log (home page). Without JS or with reduced motion, all lines show at once. `logTitle` sets the window's title; `logImage` puts a photo behind the console in place of the blue field (home: Pikes Peak, `static/images/hero-pikes-peak.jpg`), and `logCaption` adds a small credit in its corner
|
||||
- `hero` accepts `fit:` to show the layer panel under the actions (in place
|
||||
of the blue field); `bars: false` drops the field; `compact: true` makes
|
||||
the field shorter
|
||||
the field shorter. A photo set with `logImage` sits behind the whole hero band
|
||||
|
||||
Every section type now renders `kicker`, `headline`, and an optional `lede`
|
||||
through `partials/sections/head.html`.
|
||||
@@ -104,14 +107,15 @@ Some pages are long-form Markdown rather than a `sections:` list:
|
||||
Site-wide links live in `hugo.toml`: `params.demoUrl` (the booking page),
|
||||
`params.supportUrl` (the help portal), and the `footer_social` / `footer_legal` menus.
|
||||
|
||||
### The "Apps + AI" wall
|
||||
### The app logo wall
|
||||
|
||||
The rail ends with a slowly scrolling grid of app tiles, pinned to the bottom
|
||||
of the column on screens wider than 1000px and taller than 720px. Tiles come
|
||||
from `data/app_wall.yaml` (`name`, `url`, optional `icon`). Icons are symbols
|
||||
in the sprite `static/images/app-icons.svg` (from Simple Icons, CC0; DocuSeal
|
||||
from its own repo). A tile without an `icon` shows its first letter. The
|
||||
scroll pauses on hover and focus, and stops for reduced motion.
|
||||
The home page's `logos` section draws its tiles from `data/app_wall.yaml`
|
||||
(`name`, `url`, optional `icon`). Icons are symbols in the sprite
|
||||
`static/images/app-icons.svg` (from Simple Icons, CC0; DocuSeal from its own
|
||||
repo). A tile without an `icon` shows its first letter.
|
||||
|
||||
Dropdown entries in the top bar can carry a one-line description:
|
||||
`[menu.product.params] desc = "..."` in `hugo.toml`.
|
||||
|
||||
### Adding a new page
|
||||
|
||||
@@ -156,9 +160,9 @@ layouts/
|
||||
product/list.html Product overview (renders sections)
|
||||
partials/
|
||||
head.html, footer.html
|
||||
header.html The rail (nav, actions, "On this page")
|
||||
header.html The top bar (nav with dropdowns, actions, mobile menu)
|
||||
render-sections.html Dispatches each section to its partial
|
||||
section-id.html Anchor id shared by sections and the rail index
|
||||
section-id.html Anchor id for each section
|
||||
sections/*.html One partial per section type
|
||||
static/
|
||||
css/style.css The whole design system
|
||||
@@ -167,17 +171,20 @@ hugo.toml Site config + nav/footer menus
|
||||
|
||||
## Design notes
|
||||
|
||||
- **Layout:** `.page` is a two-column grid — the rail (`layouts/partials/header.html`)
|
||||
and the column (`main.col`, which also holds the footer). Below 1000px the
|
||||
rail becomes a one-line top bar with a Menu toggle.
|
||||
- **Type:** Geist (reading) and Geist Mono (caps labels, numbers, buttons),
|
||||
loaded from Google Fonts in `layouts/partials/head.html`.
|
||||
- **Layout:** a sticky top bar (`layouts/partials/header.html`), then
|
||||
`main`, then the footer — all full width. Content sits in `.wrap`
|
||||
(max 1280px, centered). Below 1080px the nav folds into a Menu toggle.
|
||||
- **Type:** Inter (headlines and reading) and JetBrains Mono (small caps
|
||||
labels and numbers), loaded from Google Fonts in `layouts/partials/head.html`.
|
||||
- **Color tokens** are CSS custom properties at the top of
|
||||
`static/css/style.css` (`--ink`, `--ink-68`, `--rule`, `--paper`,
|
||||
`--blue`, etc.) — change the palette there and it cascades everywhere.
|
||||
- **Buttons:** CTA `style: primary` is the solid blue button with an arrow
|
||||
tile, `ghost` the pale blue one with corner ticks, `text` a quiet link.
|
||||
A trailing `→` in a label is dropped; the arrow is drawn for you.
|
||||
`static/css/style.css` (`--navy-deep`, `--lime`, `--violet`, `--paper`,
|
||||
`--ink`, `--rule`, etc.) — change the palette there and it cascades
|
||||
everywhere. Each section sets `--section-bg` and `--surface` (the card
|
||||
tone), which flip on alternating bands.
|
||||
- **Buttons:** CTA `style: primary` is the solid lime button (navy on white
|
||||
bands), `ghost` the outlined one, `text` a violet link. A trailing `→` in
|
||||
a label is dropped; the arrow is drawn for you.
|
||||
- **JS is optional.** A small inline script in `baseof.html` fades sections
|
||||
in and highlights the current "On this page" entry. Without it everything
|
||||
still shows; the mobile menu, FAQ, and app directory use native `<details>`.
|
||||
in and darkens the top bar on scroll. Without it everything still shows;
|
||||
the dropdowns are CSS (hover and focus), and the mobile menu, FAQ, and
|
||||
app directory use native `<details>`.
|
||||
|
||||
@@ -65,6 +65,15 @@ sections:
|
||||
body: |
|
||||
Federated Computer is built in layers, so you can start with just the apps, add AI when you're ready, or take everything, agents included. Start in the foothills and work your way to the top of the mountain.
|
||||
|
||||
- type: logos
|
||||
source: "apps"
|
||||
kicker: "Software Library"
|
||||
headline: "Runs the Apps Your Team Already Knows"
|
||||
ctas:
|
||||
- label: "Browse All 100+ Apps →"
|
||||
url: "/product/software-library/"
|
||||
style: text
|
||||
|
||||
- type: layers
|
||||
tinted: true
|
||||
kicker: "The Federated Advantage"
|
||||
@@ -120,6 +129,20 @@ sections:
|
||||
url: "/solutions/#compare"
|
||||
style: text
|
||||
|
||||
- type: cards
|
||||
kicker: "Why Federated"
|
||||
headline: "Built by People Who Answer the Phone"
|
||||
lede: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
|
||||
items:
|
||||
- title: "Real human support"
|
||||
body: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nec odio praesent libero, sed cursus ante dapibus diam."
|
||||
- title: "Unlimited users"
|
||||
body: "Sed nisi nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum, praesent mauris fusce nec tellus."
|
||||
- title: "Free 7-day trial"
|
||||
body: "Mauris massa vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu ad litora torquent per conubia nostra."
|
||||
- title: "Single-tenant by design"
|
||||
body: "Curabitur sodales ligula in libero. Sed dignissim lacinia nunc, curabitur tortor pellentesque nibh aenean quam."
|
||||
|
||||
- type: text
|
||||
bordered: true
|
||||
kicker: "The Architecture"
|
||||
@@ -176,6 +199,16 @@ sections:
|
||||
label: "Try the full calculator"
|
||||
url: "/pricing/#savings"
|
||||
|
||||
- type: banner
|
||||
badge: "News"
|
||||
kicker: "Announcement"
|
||||
headline: "Lorem ipsum dolor sit amet, consectetur adipiscing elit"
|
||||
body: "Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris."
|
||||
ctas:
|
||||
- label: "Read the announcement"
|
||||
url: "#"
|
||||
style: primary
|
||||
|
||||
- type: text
|
||||
bordered: true
|
||||
kicker: "Our Team"
|
||||
@@ -187,6 +220,29 @@ sections:
|
||||
url: "/about/"
|
||||
style: text
|
||||
|
||||
- type: news
|
||||
kicker: "Updates"
|
||||
headline: "What's New at Federated"
|
||||
items:
|
||||
- tag: "Blog"
|
||||
date: "Sep 2026"
|
||||
title: "Lorem ipsum dolor sit amet, consectetur adipiscing elit"
|
||||
- tag: "Video"
|
||||
date: "Sep 2026"
|
||||
title: "Sed do eiusmod tempor incididunt ut labore et dolore magna"
|
||||
- tag: "Event"
|
||||
date: "Aug 2026"
|
||||
title: "Ut enim ad minim veniam, quis nostrud exercitation ullamco"
|
||||
- tag: "Blog"
|
||||
date: "Aug 2026"
|
||||
title: "Duis aute irure dolor in reprehenderit in voluptate velit"
|
||||
- tag: "Release"
|
||||
date: "Jul 2026"
|
||||
title: "Excepteur sint occaecat cupidatat non proident, sunt in culpa"
|
||||
- tag: "Video"
|
||||
date: "Jul 2026"
|
||||
title: "Nemo enim ipsam voluptatem quia voluptas sit aspernatur"
|
||||
|
||||
- type: final-cta
|
||||
dark: true
|
||||
headline: "Save money. Keep your data. Get AI that actually works for you."
|
||||
|
||||
@@ -53,39 +53,57 @@ disableKinds = ["taxonomy", "term", "RSS", "sitemap", "robotsTXT", "404"]
|
||||
name = "Open-Source Apps"
|
||||
url = "/solutions/open-source-apps/"
|
||||
weight = 10
|
||||
[menu.solutions.params]
|
||||
desc = "For teams leaving Google Workspace or Microsoft 365"
|
||||
[[menu.solutions]]
|
||||
name = "Apps + AI Development"
|
||||
url = "/solutions/apps-and-ai-development/"
|
||||
weight = 20
|
||||
[menu.solutions.params]
|
||||
desc = "Build AI on your own business data"
|
||||
[[menu.solutions]]
|
||||
name = "AI for Your Own Apps"
|
||||
url = "/solutions/ai-for-your-apps/"
|
||||
weight = 30
|
||||
[menu.solutions.params]
|
||||
desc = "Connect the open-source apps you already host"
|
||||
[[menu.solutions]]
|
||||
name = "The Full Stack"
|
||||
url = "/solutions/full-stack/"
|
||||
weight = 40
|
||||
[menu.solutions.params]
|
||||
desc = "Apps, AI development, and agents that do real work"
|
||||
[[menu.solutions]]
|
||||
name = "Compare All Four"
|
||||
url = "/solutions/#compare"
|
||||
weight = 50
|
||||
[menu.solutions.params]
|
||||
desc = "See all four paths side by side"
|
||||
|
||||
[[menu.product]]
|
||||
name = "Federated Core"
|
||||
url = "/product/federated-core/"
|
||||
weight = 10
|
||||
[menu.product.params]
|
||||
desc = "Provisioning, storage, backup, federated learning"
|
||||
[[menu.product]]
|
||||
name = "Software Library"
|
||||
url = "/product/software-library/"
|
||||
weight = 20
|
||||
[menu.product.params]
|
||||
desc = "100+ AI-ready open-source apps"
|
||||
[[menu.product]]
|
||||
name = "Agent Sandbox"
|
||||
url = "/product/agent-sandbox/"
|
||||
weight = 30
|
||||
[menu.product.params]
|
||||
desc = "High-density, instant-wake AI agents"
|
||||
[[menu.product]]
|
||||
name = "Data & Controls"
|
||||
url = "/product/data-controls/"
|
||||
weight = 40
|
||||
[menu.product.params]
|
||||
desc = "Version control, testing, and monitoring"
|
||||
|
||||
[[menu.footer_solutions]]
|
||||
name = "Open-Source Apps"
|
||||
|
||||
@@ -5,18 +5,20 @@
|
||||
</head>
|
||||
<body id="top">
|
||||
<a class="skip" href="#content">Skip to content</a>
|
||||
<div class="page">
|
||||
{{ partial "header.html" . }}
|
||||
<main class="col" id="content" tabindex="-1">
|
||||
{{ block "main" . }}{{ end }}
|
||||
{{ partial "footer.html" . }}
|
||||
</main>
|
||||
</div>
|
||||
{{ partial "header.html" . }}
|
||||
<main id="content" tabindex="-1">
|
||||
{{ block "main" . }}{{ end }}
|
||||
</main>
|
||||
{{ partial "footer.html" . }}
|
||||
<script>
|
||||
/* Progressive only: fade sections in as they scroll into view, and mark
|
||||
the rail's "On this page" link for the section being read. */
|
||||
/* Progressive only: fade sections in as they scroll into view, and
|
||||
darken the top bar once the page has scrolled. */
|
||||
(function () {
|
||||
var root = document.documentElement;
|
||||
var head = document.querySelector('.site-head');
|
||||
function onScroll() { if (head) head.classList.toggle('is-scrolled', scrollY > 8); }
|
||||
addEventListener('scroll', onScroll, { passive: true });
|
||||
onScroll();
|
||||
if (!('IntersectionObserver' in window)) return;
|
||||
root.classList.add('js');
|
||||
|
||||
@@ -26,21 +28,6 @@
|
||||
});
|
||||
}, { rootMargin: '0px 0px -8% 0px' });
|
||||
document.querySelectorAll('[data-reveal]').forEach(function (el) { io.observe(el); });
|
||||
|
||||
var links = [].slice.call(document.querySelectorAll('.nav-here a'));
|
||||
if (!links.length) return;
|
||||
var targets = links.map(function (a) { return document.getElementById(decodeURIComponent(a.hash.slice(1))); });
|
||||
var ticking = false;
|
||||
function update() {
|
||||
ticking = false;
|
||||
var current = -1;
|
||||
targets.forEach(function (t, i) { if (t && t.getBoundingClientRect().top < innerHeight * 0.3) current = i; });
|
||||
links.forEach(function (a, i) {
|
||||
if (i === current) a.setAttribute('aria-current', 'location'); else a.removeAttribute('aria-current');
|
||||
});
|
||||
}
|
||||
addEventListener('scroll', function () { if (!ticking) { ticking = true; requestAnimationFrame(update); } }, { passive: true });
|
||||
update();
|
||||
})();
|
||||
|
||||
/* Pricing: a link to a plan panel's id (e.g. /pricing/#hosted) selects its tab. */
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
{{/* Long-form legal text (Privacy Policy, Terms): a plain heading, then the Markdown body. */}}
|
||||
{{ define "main" }}
|
||||
<header class="hero hero-compact">
|
||||
<h1 class="statement">{{ .Title }}</h1>
|
||||
{{ with .Params.effective }}<p class="dek">Effective date: {{ . }}</p>{{ end }}
|
||||
<div class="wrap">
|
||||
<div class="hero-copy">
|
||||
<h1 class="statement">{{ .Title }}</h1>
|
||||
{{ with .Params.effective }}<p class="dek">Effective date: {{ . }}</p>{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<section class="section">
|
||||
<div class="prose doc">{{ .Content }}</div>
|
||||
<section class="section section-doc">
|
||||
<div class="wrap"><div class="prose doc">{{ .Content }}</div></div>
|
||||
</section>
|
||||
{{ end }}
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
{{ define "main" }}
|
||||
<section class="form-band">
|
||||
<div class="wrap">
|
||||
<div class="form-page" data-reveal>
|
||||
<p class="eyebrow">Sign In</p>
|
||||
<h1 class="statement">{{ .Params.heading | default "Welcome back" }}</h1>
|
||||
@@ -16,7 +18,7 @@
|
||||
<label><input type="checkbox" name="remember"> Remember me</label>
|
||||
<a href="#">Forgot password?</a>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-primary"><span class="btn-label">Sign In</span></button>
|
||||
<button type="submit" class="btn btn-primary">Sign In</button>
|
||||
</form>
|
||||
|
||||
<p class="form-foot">
|
||||
@@ -28,4 +30,6 @@
|
||||
Having trouble signing in? <a href="mailto:{{ .Site.Params.supportEmail }}">Contact Support</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{{ end }}
|
||||
|
||||
@@ -5,15 +5,18 @@
|
||||
*/}}
|
||||
{{ define "main" }}
|
||||
<header class="hero hero-compact">
|
||||
<div class="wrap"><div class="hero-copy">
|
||||
<p class="note" data-reveal><span class="note-live" aria-hidden="true"></span><span class="note-text">{{ .Params.eyebrow | default "Software Library" }}</span></p>
|
||||
<h1 class="statement" data-reveal style="--d:80ms">{{ .Params.headline | default .Title | markdownify }}</h1>
|
||||
{{ with .Params.dek }}<p class="dek" data-reveal style="--d:140ms">{{ . | markdownify }}</p>{{ end }}
|
||||
<div class="actions" data-reveal style="--d:200ms">
|
||||
{{ partial "sections/ctas.html" (slice (dict "label" "Start 7-Day Free Trial" "url" "/start-now/" "style" "primary") (dict "label" "Book a Demo" "url" site.Params.demoUrl "style" "ghost")) }}
|
||||
</div>
|
||||
</div></div>
|
||||
</header>
|
||||
|
||||
<section class="section" data-reveal>
|
||||
<section class="section section-facts" data-reveal>
|
||||
<div class="wrap">
|
||||
<dl class="app-facts">
|
||||
{{ with .Params.replaces }}<div><dt>Replaces</dt><dd>{{ . }}</dd></div>{{ end }}
|
||||
<div><dt>Hosted plans</dt><dd>{{ with .Params.plans }}Included in {{ . }}{{ else }}Add to any plan{{ end }}{{ with $.Params.price }} · {{ . }} on its own{{ end }}</dd></div>
|
||||
@@ -21,10 +24,11 @@
|
||||
{{ with .Params.projectUrl }}<div><dt>Project</dt><dd><a href="{{ . }}" target="_blank" rel="noopener">{{ replaceRE `^https?://(www\.)?([^/]+).*$` "$2" . }}<span class="arrow" aria-hidden="true">↗</span></a></dd></div>{{ end }}
|
||||
</dl>
|
||||
<p class="app-facts-more"><a class="more" href="{{ "/pricing/" | relURL }}">See pricing<span class="arrow" aria-hidden="true">→</span></a> <a class="more" href="{{ "/product/software-library/" | relURL }}">Browse the Software Library<span class="arrow" aria-hidden="true">→</span></a></p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="section" data-reveal>
|
||||
<div class="prose doc">{{ .Content }}</div>
|
||||
<section class="section section-doc" data-reveal>
|
||||
<div class="wrap"><div class="prose doc">{{ .Content }}</div></div>
|
||||
</section>
|
||||
|
||||
{{ partial "sections/final-cta.html" (dict
|
||||
|
||||
@@ -1,31 +1,35 @@
|
||||
<footer class="foot" data-reveal>
|
||||
<div class="foot-brand">
|
||||
<a href="{{ "/" | relURL }}" class="foot-mark" aria-label="Federated Computer, home">
|
||||
<img src="{{ "images/logo.png" | relURL }}" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||
<ul class="foot-social">
|
||||
{{ range site.Menus.footer_social }}<li><a href="{{ .URL }}" target="_blank" rel="noopener">{{ .Name }}<span class="arrow" aria-hidden="true">↗</span></a></li>{{ end }}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="foot-grid">
|
||||
{{ range (slice (dict "title" "Solutions" "menu" "footer_solutions") (dict "title" "Product" "menu" "footer_product") (dict "title" "Company" "menu" "footer_company") (dict "title" "Get Started" "menu" "footer_start")) }}
|
||||
<nav class="foot-group" aria-label="{{ .title }}">
|
||||
<span class="foot-head">{{ .title }}</span>
|
||||
<ul class="foot-links">
|
||||
{{ range index site.Menus .menu }}
|
||||
<li><a href="{{ if or (hasPrefix .URL "mailto:") (hasPrefix .URL "http") }}{{ .URL }}{{ else }}{{ .URL | relURL }}{{ end }}">{{ .Name }}</a></li>
|
||||
{{ end }}
|
||||
<footer class="foot">
|
||||
<div class="wrap">
|
||||
<div class="foot-top-row">
|
||||
<div class="foot-brand">
|
||||
<a href="{{ "/" | relURL }}" class="foot-mark" aria-label="Federated Computer, home">
|
||||
<img src="{{ "images/logo.png" | relURL }}" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||
<ul class="foot-social">
|
||||
{{ range site.Menus.footer_social }}<li><a href="{{ .URL }}" target="_blank" rel="noopener">{{ .Name }}<span class="arrow" aria-hidden="true">↗</span></a></li>{{ end }}
|
||||
</ul>
|
||||
</nav>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="foot-legal">
|
||||
<span class="foot-copy">© {{ now.Format "2006" }} Federated Computer, Inc. FedQ'd in Colorado Springs — built on Federated Computer by a team around the world.</span>
|
||||
{{ range site.Menus.footer_legal }}<a class="foot-policy" href="{{ .URL | relURL }}">{{ .Name }}</a>{{ end }}
|
||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||
<div class="foot-grid">
|
||||
{{ range (slice (dict "title" "Solutions" "menu" "footer_solutions") (dict "title" "Product" "menu" "footer_product") (dict "title" "Company" "menu" "footer_company") (dict "title" "Get Started" "menu" "footer_start")) }}
|
||||
<nav class="foot-group" aria-label="{{ .title }}">
|
||||
<span class="foot-head">{{ .title }}</span>
|
||||
<ul class="foot-links">
|
||||
{{ range index site.Menus .menu }}
|
||||
<li><a href="{{ if or (hasPrefix .URL "mailto:") (hasPrefix .URL "http") }}{{ .URL }}{{ else }}{{ .URL | relURL }}{{ end }}">{{ .Name }}</a></li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
</nav>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="foot-legal">
|
||||
<span class="foot-copy">© {{ now.Format "2006" }} Federated Computer, Inc. FedQ'd in Colorado Springs — built on Federated Computer by a team around the world.</span>
|
||||
{{ range site.Menus.footer_legal }}<a class="foot-policy" href="{{ .URL | relURL }}">{{ .Name }}</a>{{ end }}
|
||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>{{ if .IsHome }}{{ .Site.Title }} — {{ .Site.Params.tagline }}{{ else }}{{ .Title }} · {{ .Site.Title }}{{ end }}</title>
|
||||
<meta name="description" content="{{ if .Description }}{{ .Description }}{{ else }}{{ .Site.Params.tagline }}{{ end }}">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<meta name="theme-color" content="#001a2b">
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{ "css/style.css" | relURL }}">
|
||||
|
||||
@@ -1,15 +1,47 @@
|
||||
{{/*
|
||||
The rail: logo, the site's pages ("doors"), the two account actions, and
|
||||
an index of the sections on this page. Sticky beside the column on wide
|
||||
screens; a one-line bar with a Menu toggle below 1000px.
|
||||
The top bar: logo, the site's pages (with dropdown panels for menus that
|
||||
set `dropdown`), and the two account actions. Sticky on every screen;
|
||||
below 1000px the pages fold into a Menu toggle (a <details>, so it works
|
||||
without JS).
|
||||
*/}}
|
||||
{{ $page := . }}
|
||||
<aside class="rail">
|
||||
<div class="rail-bar">
|
||||
<header class="site-head">
|
||||
<div class="wrap head-bar">
|
||||
<a href="{{ "/" | relURL }}" class="brand" aria-label="Federated Computer, home">
|
||||
<img src="{{ "images/logo.png" | relURL }}" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
|
||||
<nav class="head-nav" aria-label="Site">
|
||||
{{ range .Site.Menus.main }}
|
||||
{{ if ne .URL "/" }}
|
||||
{{ $m := . }}
|
||||
{{ $active := hasPrefix $page.RelPermalink .URL }}
|
||||
{{ with .Params.dropdown }}
|
||||
<div class="nav-item has-drop">
|
||||
<a href="{{ $m.URL | relURL }}" class="nav-link"{{ if $active }} aria-current="page"{{ end }}>{{ $m.Name }}<svg class="nav-caret" viewBox="0 0 10 6" width="10" height="6" aria-hidden="true"><path d="M1 1l4 4 4-4" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></a>
|
||||
<div class="drop">
|
||||
<div class="drop-panel">
|
||||
{{ range index $page.Site.Menus . }}
|
||||
<a href="{{ .URL | relURL }}" class="drop-link"{{ if eq $page.RelPermalink .URL }} aria-current="page"{{ end }}>
|
||||
<span class="drop-name">{{ .Name }}</span>
|
||||
{{ with .Params.desc }}<span class="drop-desc">{{ . }}</span>{{ end }}
|
||||
</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{ else }}
|
||||
<a href="{{ $m.URL | relURL }}" class="nav-link"{{ if $active }} aria-current="page"{{ end }}>{{ $m.Name }}</a>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</nav>
|
||||
|
||||
<div class="head-actions">
|
||||
<a href="{{ "/sign-in/" | relURL }}" class="head-signin"{{ if eq $page.RelPermalink "/sign-in/" }} aria-current="page"{{ end }}>Sign in</a>
|
||||
<a href="{{ "/start-now/" | relURL }}" class="btn btn-primary btn-sm">Start now</a>
|
||||
</div>
|
||||
|
||||
<details class="menu">
|
||||
<summary><span class="menu-word">Menu</span><span class="menu-glyph" aria-hidden="true"><i></i><i></i></span></summary>
|
||||
<nav class="menu-panel" aria-label="Site">
|
||||
@@ -27,72 +59,4 @@
|
||||
</nav>
|
||||
</details>
|
||||
</div>
|
||||
|
||||
<nav class="nav nav-doors" aria-label="Site">
|
||||
{{ range .Site.Menus.main }}
|
||||
{{ $active := or (eq $page.RelPermalink .URL) (and (ne .URL "/") (hasPrefix $page.RelPermalink .URL)) }}
|
||||
<a href="{{ .URL | relURL }}"{{ if $active }} aria-current="page"{{ end }}>{{ .Name }}</a>
|
||||
{{ if $active }}
|
||||
{{ with .Params.dropdown }}
|
||||
<div class="nav-sub">
|
||||
{{ range index $page.Site.Menus . }}
|
||||
<a href="{{ .URL | relURL }}"{{ if eq $page.RelPermalink .URL }} aria-current="page"{{ end }}>{{ .Name }}</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</nav>
|
||||
|
||||
<div class="rail-actions">
|
||||
<a href="{{ "/start-now/" | relURL }}" class="btn btn-primary btn-sm"><span class="btn-label">Start Now</span></a>
|
||||
<a href="{{ "/sign-in/" | relURL }}" class="rail-signin"{{ if eq $page.RelPermalink "/sign-in/" }} aria-current="page"{{ end }}>Sign In</a>
|
||||
</div>
|
||||
|
||||
{{ $toc := slice }}
|
||||
{{ range .Params.sections }}
|
||||
{{ $label := or .toc .kicker .headline }}
|
||||
{{ if and $label (not (in (slice "hero" "divider" "final-cta") .type)) }}
|
||||
{{ $toc = $toc | append (dict "label" ($label | plainify) "id" (partial "section-id.html" .)) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ if $toc }}
|
||||
<hr class="rail-rule">
|
||||
<nav class="nav nav-here" aria-label="On this page">
|
||||
{{ range $toc }}<a href="#{{ .id }}">{{ .label }}</a>{{ end }}
|
||||
</nav>
|
||||
{{ end }}
|
||||
|
||||
{{/*
|
||||
"Apps + AI": a slowly scrolling wall of app tiles pinned to the bottom of
|
||||
the rail (wide screens only). The list is repeated once, hidden from
|
||||
assistive tech and focus, so the scroll can loop seamlessly. Tiles come
|
||||
from data/app_wall.yaml; icons from the sprite at images/app-icons.svg.
|
||||
*/}}
|
||||
{{ with hugo.Data.app_wall }}
|
||||
{{ $sprite := "images/app-icons.svg" | relURL }}
|
||||
<nav class="app-wall" aria-label="Apps + AI">
|
||||
<a class="app-wall-head" href="{{ "/product/software-library/" | relURL }}">
|
||||
<span class="app-wall-title">Apps + AI</span>
|
||||
<span class="app-wall-count">Catalog<span class="arrow" aria-hidden="true">→</span></span>
|
||||
</a>
|
||||
<div class="app-wall-view">
|
||||
<div class="app-wall-scroll">
|
||||
{{ range $copy := slice 0 1 }}
|
||||
<ul class="app-wall-grid"{{ if $copy }} aria-hidden="true"{{ end }}>
|
||||
{{ range hugo.Data.app_wall }}
|
||||
<li>
|
||||
<a class="app-tile" href="{{ .url | relURL }}"{{ if $copy }} tabindex="-1"{{ end }}>
|
||||
{{ with .icon }}<svg class="app-tile-icon" aria-hidden="true"><use href="{{ $sprite }}#{{ . }}"></use></svg>
|
||||
{{ else }}<span class="app-tile-icon app-tile-letter" aria-hidden="true">{{ substr .name 0 1 }}</span>{{ end }}
|
||||
<span class="app-tile-name">{{ .name }}</span>
|
||||
</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
{{ end }}
|
||||
</aside>
|
||||
</header>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{{/*
|
||||
Anchor id for a section: its own `id`, else one made from its `toc`,
|
||||
`kicker`, or `headline`. Shared by the section wrapper and the rail's
|
||||
"On this page" index so the two always agree.
|
||||
`kicker`, or `headline`. Used by the section wrapper and by the pricing
|
||||
switch.
|
||||
*/}}
|
||||
{{ $id := "" }}
|
||||
{{ with .id }}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
{{/*
|
||||
An announcement banner: a dark rounded plate with an optional `badge`
|
||||
(short label on the left), `kicker`, `headline`, `body`, and `ctas`.
|
||||
*/}}
|
||||
{{ $s := . }}
|
||||
<div class="banner">
|
||||
{{ with $s.badge }}<div class="banner-badge"><span>{{ . }}</span></div>{{ end }}
|
||||
<div class="banner-copy">
|
||||
{{ with $s.kicker }}<p class="eyebrow">{{ . }}</p>{{ end }}
|
||||
{{ with $s.headline }}<h2 class="banner-title">{{ . | markdownify }}</h2>{{ end }}
|
||||
{{ with $s.body }}<p class="banner-text">{{ . | markdownify }}</p>{{ end }}
|
||||
</div>
|
||||
{{ if $s.ctas }}<div class="actions">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
||||
</div>
|
||||
@@ -0,0 +1,22 @@
|
||||
{{/*
|
||||
A grid of cards: `items`, each with `title`, `body`, optional `label`
|
||||
(a small tag above the title), `image`, and `link` (+ `linktext`).
|
||||
Without an image, `visual: true` draws a gradient panel in its place.
|
||||
*/}}
|
||||
{{ $s := . }}
|
||||
{{ partial "sections/head.html" $s }}
|
||||
<ul class="card-grid{{ with $s.columns }} cols-{{ . }}{{ end }}">
|
||||
{{ range $i, $c := $s.items }}
|
||||
<li class="card{{ if or $c.image $s.visual }} has-visual{{ end }}">
|
||||
{{ with $c.image }}<img class="card-visual" src="{{ . | relURL }}" alt="" loading="lazy">
|
||||
{{ else }}{{ if $s.visual }}<span class="card-visual card-art" style="--i:{{ $i }}" aria-hidden="true"></span>{{ end }}{{ end }}
|
||||
<div class="card-body">
|
||||
{{ with $c.label }}<span class="card-label">{{ . }}</span>{{ end }}
|
||||
<h3 class="card-title">{{ $c.title | markdownify }}</h3>
|
||||
{{ with $c.body }}<p class="card-text">{{ . | markdownify }}</p>{{ end }}
|
||||
{{ with $c.link }}<a class="more card-link" href="{{ . | relURL }}">{{ replaceRE `\s*[→↗]\s*$` "" ($c.linktext | default "Learn more") }}<span class="arrow" aria-hidden="true">→</span></a>{{ end }}
|
||||
</div>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ if $s.ctas }}<div class="cta-row">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
||||
@@ -1,7 +1,7 @@
|
||||
{{/*
|
||||
Buttons. `primary` is the solid blue button with a leading arrow tile,
|
||||
`ghost` the pale blue secondary with corner ticks, `text` a quiet link
|
||||
with an arrow. Any trailing "→" in a label is dropped — the arrow is drawn.
|
||||
Buttons. `primary` is the solid lime button, `ghost` the outlined
|
||||
secondary, `text` a quiet link with an arrow. Any trailing "→" in a
|
||||
label is dropped — the arrow is drawn.
|
||||
*/}}
|
||||
{{ range . }}
|
||||
{{ $label := replaceRE `\s*[→↗]\s*$` "" .label }}
|
||||
@@ -12,9 +12,6 @@
|
||||
{{ else if eq .style "text" }}
|
||||
<a href="{{ $href }}" class="more">{{ $label }}<span class="arrow" aria-hidden="true">{{ if $external }}↗{{ else }}→{{ end }}</span></a>
|
||||
{{ else }}
|
||||
<a href="{{ $href }}" class="btn btn-primary">
|
||||
<span class="btn-tile" aria-hidden="true"><svg viewBox="0 0 16 16" width="14" height="14" fill="none"><path d="M3 8h9M8.5 4.5 12 8l-3.5 3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="square"/></svg></span>
|
||||
<span class="btn-label">{{ $label }}</span>
|
||||
</a>
|
||||
<a href="{{ $href }}" class="btn btn-primary">{{ $label }}<span class="arrow" aria-hidden="true">{{ if $external }}↗{{ else }}→{{ end }}</span></a>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
{{ $s := . }}
|
||||
<aside class="cta" data-reveal>
|
||||
<h2 class="cta-title">{{ $s.headline | markdownify }}</h2>
|
||||
{{ with $s.body }}<p class="cta-text">{{ . | markdownify }}</p>{{ end }}
|
||||
{{ if $s.ctas }}<div class="actions">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
||||
<div class="wrap cta-inner">
|
||||
<div class="cta-copy">
|
||||
<h2 class="cta-title">{{ $s.headline | markdownify }}</h2>
|
||||
{{ with $s.body }}<p class="cta-text">{{ . | markdownify }}</p>{{ end }}
|
||||
</div>
|
||||
{{ if $s.ctas }}<div class="actions">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
||||
</div>
|
||||
</aside>
|
||||
|
||||
@@ -1,26 +1,30 @@
|
||||
{{/*
|
||||
The opening of every page: an optional note (the eyebrow), the statement,
|
||||
the dek, the actions — then either the layer panel (when `fit:` is set)
|
||||
or the field, a blue plate with the platform's four layers drawn as bars.
|
||||
`bars: false` drops the field.
|
||||
The opening of every page: a full-bleed dark band. On the left, an
|
||||
optional note (the eyebrow), the statement, the dek, the actions; on the
|
||||
right, the agent log (when `log:` is set), the layer panel (when `fit:`
|
||||
is set), or the field — the platform's four layers drawn as bars.
|
||||
`bars: false` drops the field. `logImage` sets a photo behind the whole band.
|
||||
*/}}
|
||||
{{ $s := . }}
|
||||
<header class="hero{{ if $s.compact }} hero-compact{{ end }}">
|
||||
{{ $visual := or $s.log $s.fit (ne $s.bars false) }}
|
||||
<header class="hero{{ if $s.compact }} hero-compact{{ end }}{{ if $visual }} has-visual{{ end }}{{ if $s.logImage }} has-image{{ end }}">
|
||||
{{ with $s.logImage }}<img class="hero-bg" src="{{ . | relURL }}" alt="" fetchpriority="high">{{ end }}
|
||||
<div class="wrap hero-grid">
|
||||
<div class="hero-copy">
|
||||
{{ with $s.eyebrow }}<p class="note" data-reveal><span class="note-live" aria-hidden="true"></span><span class="note-text">{{ . }}</span></p>{{ end }}
|
||||
<h1 class="statement" data-reveal style="--d:80ms">{{ $s.title | markdownify }}</h1>
|
||||
{{ with $s.subhead }}<p class="dek" data-reveal style="--d:140ms">{{ . | markdownify }}</p>{{ end }}
|
||||
{{ if $s.ctas }}<div class="actions" data-reveal style="--d:200ms">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
||||
</div>
|
||||
|
||||
{{ with $s.log }}
|
||||
{{/*
|
||||
An agent's activity log, typed out line by line (see the script below).
|
||||
Lines take `tag` + `text`; `think: true` marks a reasoning step (greyed,
|
||||
with a pause); `done: true` closes the run. The window keeps a fixed
|
||||
height and scrolls as lines arrive. `logImage` swaps the blue field for
|
||||
a photo; `logCaption` credits it.
|
||||
height and scrolls as lines arrive. `logCaption` credits the photo.
|
||||
*/}}
|
||||
<figure class="hero-field hero-log{{ if $s.logImage }} has-image{{ end }}" data-reveal style="--d:260ms">
|
||||
{{ with $s.logImage }}<img class="log-bg" src="{{ . | relURL }}" alt="" fetchpriority="high">{{ end }}
|
||||
<figure class="hero-log" data-reveal style="--d:260ms">
|
||||
<div class="log-window">
|
||||
<div class="log-bar">
|
||||
<span class="log-title">{{ $s.logTitle | default "agent · your-company.federated.computer" }}</span>
|
||||
@@ -37,7 +41,6 @@
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
{{ with $s.logCaption }}<figcaption class="log-caption">{{ . }}</figcaption>{{ end }}
|
||||
</figure>
|
||||
<script>
|
||||
(function () {
|
||||
@@ -106,4 +109,6 @@
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ with $s.logCaption }}<p class="hero-caption">{{ . }}</p>{{ end }}
|
||||
</header>
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<span class="entry-title">{{ $item.title }}</span>
|
||||
<span class="entry-text">{{ $item.body | markdownify }}</span>
|
||||
</span>
|
||||
<span class="entry-go">{{ with $item.linktext }}{{ replaceRE `\s*[→↗]\s*$` "" . }}{{ end }}<span class="arrow" aria-hidden="true">→</span></span>
|
||||
<span class="entry-go">{{ replaceRE `\s*[→↗]\s*$` "" ($item.linktext | default "Learn more") }}<span class="arrow" aria-hidden="true">→</span></span>
|
||||
</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
{{/*
|
||||
A logo wall. `source: "apps"` fills it from data/app_wall.yaml (icons from
|
||||
the sprite at images/app-icons.svg; a tile without an icon shows its first
|
||||
letter). Otherwise `items`, each a `name` and optional `url`, render as
|
||||
wordmarks.
|
||||
*/}}
|
||||
{{ $s := . }}
|
||||
{{ partial "sections/head.html" $s }}
|
||||
{{ $sprite := "images/app-icons.svg" | relURL }}
|
||||
{{ $items := cond (eq $s.source "apps") hugo.Data.app_wall ($s.items | default slice) }}
|
||||
<ul class="logo-wall">
|
||||
{{ range $items }}
|
||||
<li>
|
||||
{{ if .url }}<a class="logo-tile" href="{{ .url | relURL }}">{{ else }}<span class="logo-tile">{{ end }}
|
||||
{{ if eq $s.source "apps" }}
|
||||
{{ with .icon }}<svg class="logo-icon" aria-hidden="true"><use href="{{ $sprite }}#{{ . }}"></use></svg>
|
||||
{{ else }}<span class="logo-icon logo-letter" aria-hidden="true">{{ substr .name 0 1 }}</span>{{ end }}
|
||||
{{ end }}
|
||||
<span class="logo-name">{{ .name }}</span>
|
||||
{{ if .url }}</a>{{ else }}</span>{{ end }}
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ if $s.ctas }}<div class="cta-row">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
||||
@@ -0,0 +1,20 @@
|
||||
{{/*
|
||||
"What's new": a grid of linked cards. `items`, each with `tag` (e.g.
|
||||
Blog, Video, Event), `title`, optional `date`, `url`, and `image`
|
||||
(a gradient panel shows without one).
|
||||
*/}}
|
||||
{{ $s := . }}
|
||||
{{ partial "sections/head.html" $s }}
|
||||
<ul class="news-grid">
|
||||
{{ range $i, $n := $s.items }}
|
||||
<li>
|
||||
<a class="news-card" href="{{ $n.url | default "#" | relURL }}">
|
||||
{{ with $n.image }}<img class="news-visual" src="{{ . | relURL }}" alt="" loading="lazy">
|
||||
{{ else }}<span class="news-visual card-art" style="--i:{{ $i }}" aria-hidden="true">{{ if eq $n.tag "Video" }}<span class="news-play"></span>{{ end }}</span>{{ end }}
|
||||
<span class="news-meta">{{ with $n.tag }}<span class="news-tag">{{ . }}</span>{{ end }}{{ with $n.date }}<span class="news-date">{{ . }}</span>{{ end }}</span>
|
||||
<span class="news-title">{{ $n.title }}</span>
|
||||
</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ if $s.ctas }}<div class="cta-row">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
||||
@@ -1,5 +1,7 @@
|
||||
{{ $s := . }}
|
||||
{{ $id := partial "section-id.html" $s }}
|
||||
<section class="section section-{{ $s.type }}"{{ with $id }} id="{{ . }}"{{ end }} data-reveal>
|
||||
{{ partial (printf "sections/%s.html" $s.type) $s }}
|
||||
<div class="wrap">
|
||||
{{ partial (printf "sections/%s.html" $s.type) $s }}
|
||||
</div>
|
||||
</section>
|
||||
|
||||
+245
-749
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+812
-807
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+783
-758
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+238
-739
File diff suppressed because it is too large
Load Diff
+216
-693
@@ -5,24 +5,133 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Privacy Policy · Federated Computer</title>
|
||||
<meta name="description" content="How Federated Computer collects, uses, and safeguards your information.">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<meta name="theme-color" content="#001a2b">
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="../css/style.css">
|
||||
|
||||
</head>
|
||||
<body id="top">
|
||||
<a class="skip" href="#content">Skip to content</a>
|
||||
<div class="page">
|
||||
|
||||
|
||||
|
||||
<aside class="rail">
|
||||
<div class="rail-bar">
|
||||
<header class="site-head">
|
||||
<div class="wrap head-bar">
|
||||
<a href="../" class="brand" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
|
||||
<nav class="head-nav" aria-label="Site">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="nav-item has-drop">
|
||||
<a href="../solutions/" class="nav-link">Solutions<svg class="nav-caret" viewBox="0 0 10 6" width="10" height="6" aria-hidden="true"><path d="M1 1l4 4 4-4" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></a>
|
||||
<div class="drop">
|
||||
<div class="drop-panel">
|
||||
|
||||
<a href="../solutions/open-source-apps/" class="drop-link">
|
||||
<span class="drop-name">Open-Source Apps</span>
|
||||
<span class="drop-desc">For teams leaving Google Workspace or Microsoft 365</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/apps-and-ai-development/" class="drop-link">
|
||||
<span class="drop-name">Apps + AI Development</span>
|
||||
<span class="drop-desc">Build AI on your own business data</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/ai-for-your-apps/" class="drop-link">
|
||||
<span class="drop-name">AI for Your Own Apps</span>
|
||||
<span class="drop-desc">Connect the open-source apps you already host</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/full-stack/" class="drop-link">
|
||||
<span class="drop-name">The Full Stack</span>
|
||||
<span class="drop-desc">Apps, AI development, and agents that do real work</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/#compare" class="drop-link">
|
||||
<span class="drop-name">Compare All Four</span>
|
||||
<span class="drop-desc">See all four paths side by side</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="nav-item has-drop">
|
||||
<a href="../product/" class="nav-link">Product<svg class="nav-caret" viewBox="0 0 10 6" width="10" height="6" aria-hidden="true"><path d="M1 1l4 4 4-4" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></a>
|
||||
<div class="drop">
|
||||
<div class="drop-panel">
|
||||
|
||||
<a href="../product/federated-core/" class="drop-link">
|
||||
<span class="drop-name">Federated Core</span>
|
||||
<span class="drop-desc">Provisioning, storage, backup, federated learning</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/software-library/" class="drop-link">
|
||||
<span class="drop-name">Software Library</span>
|
||||
<span class="drop-desc">100+ AI-ready open-source apps</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/agent-sandbox/" class="drop-link">
|
||||
<span class="drop-name">Agent Sandbox</span>
|
||||
<span class="drop-desc">High-density, instant-wake AI agents</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/data-controls/" class="drop-link">
|
||||
<span class="drop-name">Data & Controls</span>
|
||||
<span class="drop-desc">Version control, testing, and monitoring</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../ai-privacy-advantage/" class="nav-link">AI Privacy Advantage</a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../pricing/" class="nav-link">Pricing</a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../about/" class="nav-link">About</a>
|
||||
|
||||
|
||||
|
||||
</nav>
|
||||
|
||||
<div class="head-actions">
|
||||
<a href="../sign-in/" class="head-signin">Sign in</a>
|
||||
<a href="../start-now/" class="btn btn-primary btn-sm">Start now</a>
|
||||
</div>
|
||||
|
||||
<details class="menu">
|
||||
<summary><span class="menu-word">Menu</span><span class="menu-glyph" aria-hidden="true"><i></i><i></i></span></summary>
|
||||
<nav class="menu-panel" aria-label="Site">
|
||||
@@ -60,10 +169,7 @@
|
||||
|
||||
|
||||
|
||||
<a href="../start-now/" class="btn btn-primary">
|
||||
<span class="btn-tile" aria-hidden="true"><svg viewBox="0 0 16 16" width="14" height="14" fill="none"><path d="M3 8h9M8.5 4.5 12 8l-3.5 3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="square"/></svg></span>
|
||||
<span class="btn-label">Start Now</span>
|
||||
</a>
|
||||
<a href="../start-now/" class="btn btn-primary">Start Now<span class="arrow" aria-hidden="true">→</span></a>
|
||||
|
||||
|
||||
|
||||
@@ -78,595 +184,20 @@
|
||||
</nav>
|
||||
</details>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="nav nav-doors" aria-label="Site">
|
||||
<main id="content" tabindex="-1">
|
||||
|
||||
|
||||
<a href="../">Home</a>
|
||||
|
||||
|
||||
|
||||
<a href="../solutions/">Solutions</a>
|
||||
|
||||
|
||||
|
||||
<a href="../product/">Product</a>
|
||||
|
||||
|
||||
|
||||
<a href="../ai-privacy-advantage/">AI Privacy Advantage</a>
|
||||
|
||||
|
||||
|
||||
<a href="../pricing/">Pricing</a>
|
||||
|
||||
|
||||
|
||||
<a href="../about/">About</a>
|
||||
|
||||
|
||||
</nav>
|
||||
|
||||
<div class="rail-actions">
|
||||
<a href="../start-now/" class="btn btn-primary btn-sm"><span class="btn-label">Start Now</span></a>
|
||||
<a href="../sign-in/" class="rail-signin">Sign In</a>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<nav class="app-wall" aria-label="Apps + AI">
|
||||
<a class="app-wall-head" href="../product/software-library/">
|
||||
<span class="app-wall-title">Apps + AI</span>
|
||||
<span class="app-wall-count">Catalog<span class="arrow" aria-hidden="true">→</span></span>
|
||||
</a>
|
||||
<div class="app-wall-view">
|
||||
<div class="app-wall-scroll">
|
||||
|
||||
<ul class="app-wall-grid">
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../nextcloud/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#nextcloud"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Nextcloud</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#claude"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Claude Code</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/#mcp">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mcp"></use></svg>
|
||||
|
||||
<span class="app-tile-name">MCP</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../jitsi/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jitsi"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jitsi</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../espocrm/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">E</span>
|
||||
<span class="app-tile-name">EspoCRM</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../element/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#element"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Element</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../n8n/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#n8n"></use></svg>
|
||||
|
||||
<span class="app-tile-name">n8n</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../immich/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#immich"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Immich</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jupyter"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jupyter</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../wordpress/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#wordpress"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WordPress</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../freescout/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">F</span>
|
||||
<span class="app-tile-name">FreeScout</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../collabora-writer/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#collabora"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Collabora</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#opencode"></use></svg>
|
||||
|
||||
<span class="app-tile-name">OpenCode</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../vaultwarden/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#vaultwarden"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Vaultwarden</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../calcom/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#calcom"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Cal.com</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../gitea/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#gitea"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Gitea</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../discourse/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#discourse"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Discourse</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#grafana"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Grafana</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../bookstack/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#bookstack"></use></svg>
|
||||
|
||||
<span class="app-tile-name">BookStack</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../docuseal/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#docuseal"></use></svg>
|
||||
|
||||
<span class="app-tile-name">DocuSeal</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plane/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plane"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plane</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../baserow/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#baserow"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Baserow</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../listmonk/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#listmonk"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Listmonk</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#postgresql"></use></svg>
|
||||
|
||||
<span class="app-tile-name">PostgreSQL</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../mautic/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mautic"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Mautic</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plausible-analytics/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plausible"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plausible</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../matomo/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#matomo"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Matomo</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../kimai/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">K</span>
|
||||
<span class="app-tile-name">Kimai</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../castopod/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">C</span>
|
||||
<span class="app-tile-name">Castopod</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../woocommerce-ecommerce/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#woocommerce"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WooCommerce</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../roundcube/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#roundcube"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Roundcube</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../headscale/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">H</span>
|
||||
<span class="app-tile-name">Headscale</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../solutions/ai-for-your-apps/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#add"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Add Yours</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<ul class="app-wall-grid" aria-hidden="true">
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../nextcloud/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#nextcloud"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Nextcloud</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#claude"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Claude Code</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/#mcp" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mcp"></use></svg>
|
||||
|
||||
<span class="app-tile-name">MCP</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../jitsi/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jitsi"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jitsi</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../espocrm/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">E</span>
|
||||
<span class="app-tile-name">EspoCRM</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../element/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#element"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Element</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../n8n/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#n8n"></use></svg>
|
||||
|
||||
<span class="app-tile-name">n8n</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../immich/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#immich"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Immich</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jupyter"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jupyter</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../wordpress/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#wordpress"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WordPress</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../freescout/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">F</span>
|
||||
<span class="app-tile-name">FreeScout</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../collabora-writer/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#collabora"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Collabora</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#opencode"></use></svg>
|
||||
|
||||
<span class="app-tile-name">OpenCode</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../vaultwarden/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#vaultwarden"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Vaultwarden</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../calcom/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#calcom"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Cal.com</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../gitea/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#gitea"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Gitea</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../discourse/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#discourse"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Discourse</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#grafana"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Grafana</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../bookstack/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#bookstack"></use></svg>
|
||||
|
||||
<span class="app-tile-name">BookStack</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../docuseal/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#docuseal"></use></svg>
|
||||
|
||||
<span class="app-tile-name">DocuSeal</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plane/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plane"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plane</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../baserow/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#baserow"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Baserow</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../listmonk/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#listmonk"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Listmonk</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#postgresql"></use></svg>
|
||||
|
||||
<span class="app-tile-name">PostgreSQL</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../mautic/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mautic"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Mautic</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plausible-analytics/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plausible"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plausible</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../matomo/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#matomo"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Matomo</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../kimai/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">K</span>
|
||||
<span class="app-tile-name">Kimai</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../castopod/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">C</span>
|
||||
<span class="app-tile-name">Castopod</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../woocommerce-ecommerce/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#woocommerce"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WooCommerce</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../roundcube/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#roundcube"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Roundcube</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../headscale/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">H</span>
|
||||
<span class="app-tile-name">Headscale</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../solutions/ai-for-your-apps/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#add"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Add Yours</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
</aside>
|
||||
|
||||
<main class="col" id="content" tabindex="-1">
|
||||
|
||||
<header class="hero hero-compact">
|
||||
<h1 class="statement">Privacy Policy</h1>
|
||||
<p class="dek">Effective date: December 15, 2024</p>
|
||||
<div class="wrap">
|
||||
<div class="hero-copy">
|
||||
<h1 class="statement">Privacy Policy</h1>
|
||||
<p class="dek">Effective date: December 15, 2024</p>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<section class="section">
|
||||
<div class="prose doc"><p>At Federated Computer, we value your privacy and are committed to protecting your personal information. This Privacy Policy outlines how we collect, use, and safeguard your data when you visit our <a href="../">website</a>, interact with our services, or engage with our marketing content.</p>
|
||||
<section class="section section-doc">
|
||||
<div class="wrap"><div class="prose doc"><p>At Federated Computer, we value your privacy and are committed to protecting your personal information. This Privacy Policy outlines how we collect, use, and safeguard your data when you visit our <a href="../">website</a>, interact with our services, or engage with our marketing content.</p>
|
||||
<p>By accessing and using our website, you agree to the terms and conditions set forth in this Privacy Policy. If you do not agree with this policy, please refrain from using our services.</p>
|
||||
<h2 id="1-information-we-collect">1. Information We Collect</h2>
|
||||
<p>Because we are all beholden to Google and friends to do anything on the web (grrr), we collect different types of information in the course of providing our marketing services:</p>
|
||||
@@ -740,101 +271,108 @@
|
||||
<li>Email: <a href="mailto:info@federated.computer">info@federated.computer</a></li>
|
||||
</ul>
|
||||
<p>By using our website, you acknowledge that you have read and understand this Privacy Policy and agree to its terms.</p>
|
||||
</div>
|
||||
</div></div>
|
||||
</section>
|
||||
|
||||
<footer class="foot" data-reveal>
|
||||
<div class="foot-brand">
|
||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||
<ul class="foot-social">
|
||||
<li><a href="https://www.linkedin.com/company/federated-computer" target="_blank" rel="noopener">LinkedIn<span class="arrow" aria-hidden="true">↗</span></a></li><li><a href="https://x.com/federatedcomp" target="_blank" rel="noopener">X<span class="arrow" aria-hidden="true">↗</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</main>
|
||||
<footer class="foot">
|
||||
<div class="wrap">
|
||||
<div class="foot-top-row">
|
||||
<div class="foot-brand">
|
||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||
<ul class="foot-social">
|
||||
<li><a href="https://www.linkedin.com/company/federated-computer" target="_blank" rel="noopener">LinkedIn<span class="arrow" aria-hidden="true">↗</span></a></li><li><a href="https://x.com/federatedcomp" target="_blank" rel="noopener">X<span class="arrow" aria-hidden="true">↗</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="foot-grid">
|
||||
|
||||
<nav class="foot-group" aria-label="Solutions">
|
||||
<span class="foot-head">Solutions</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/apps-and-ai-development/">Apps + AI Development</a></li>
|
||||
|
||||
<li><a href="../solutions/ai-for-your-apps/">AI for Your Own Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/full-stack/">The Full Stack</a></li>
|
||||
|
||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Product">
|
||||
<span class="foot-head">Product</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||
|
||||
<li><a href="../product/software-library/">Software Library</a></li>
|
||||
|
||||
<li><a href="../product/agent-sandbox/">Agent Sandbox</a></li>
|
||||
|
||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||
|
||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Company">
|
||||
<span class="foot-head">Company</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../about/">About</a></li>
|
||||
|
||||
<li><a href="../about/#team">Team</a></li>
|
||||
|
||||
<li><a href="../about/#jobs">Jobs</a></li>
|
||||
|
||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Get Started">
|
||||
<span class="foot-head">Get Started</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../start-now/">Start Now</a></li>
|
||||
|
||||
<li><a href="../sign-in/">Sign In</a></li>
|
||||
|
||||
<li><a href="../pricing/">Pricing</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
<div class="foot-grid">
|
||||
|
||||
<nav class="foot-group" aria-label="Solutions">
|
||||
<span class="foot-head">Solutions</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/apps-and-ai-development/">Apps + AI Development</a></li>
|
||||
|
||||
<li><a href="../solutions/ai-for-your-apps/">AI for Your Own Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/full-stack/">The Full Stack</a></li>
|
||||
|
||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Product">
|
||||
<span class="foot-head">Product</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||
|
||||
<li><a href="../product/software-library/">Software Library</a></li>
|
||||
|
||||
<li><a href="../product/agent-sandbox/">Agent Sandbox</a></li>
|
||||
|
||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||
|
||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Company">
|
||||
<span class="foot-head">Company</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../about/">About</a></li>
|
||||
|
||||
<li><a href="../about/#team">Team</a></li>
|
||||
|
||||
<li><a href="../about/#jobs">Jobs</a></li>
|
||||
|
||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Get Started">
|
||||
<span class="foot-head">Get Started</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../start-now/">Start Now</a></li>
|
||||
|
||||
<li><a href="../sign-in/">Sign In</a></li>
|
||||
|
||||
<li><a href="../pricing/">Pricing</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="foot-legal">
|
||||
<span class="foot-copy">© 2026 Federated Computer, Inc. FedQ'd in Colorado Springs — built on Federated Computer by a team around the world.</span>
|
||||
<a class="foot-policy" href="../privacy-policy/">Privacy Policy</a><a class="foot-policy" href="../terms-and-conditions/">Terms & Conditions</a>
|
||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||
<div class="foot-legal">
|
||||
<span class="foot-copy">© 2026 Federated Computer, Inc. FedQ'd in Colorado Springs — built on Federated Computer by a team around the world.</span>
|
||||
<a class="foot-policy" href="../privacy-policy/">Privacy Policy</a><a class="foot-policy" href="../terms-and-conditions/">Terms & Conditions</a>
|
||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
|
||||
(function () {
|
||||
var root = document.documentElement;
|
||||
var head = document.querySelector('.site-head');
|
||||
function onScroll() { if (head) head.classList.toggle('is-scrolled', scrollY > 8); }
|
||||
addEventListener('scroll', onScroll, { passive: true });
|
||||
onScroll();
|
||||
if (!('IntersectionObserver' in window)) return;
|
||||
root.classList.add('js');
|
||||
|
||||
@@ -844,21 +382,6 @@
|
||||
});
|
||||
}, { rootMargin: '0px 0px -8% 0px' });
|
||||
document.querySelectorAll('[data-reveal]').forEach(function (el) { io.observe(el); });
|
||||
|
||||
var links = [].slice.call(document.querySelectorAll('.nav-here a'));
|
||||
if (!links.length) return;
|
||||
var targets = links.map(function (a) { return document.getElementById(decodeURIComponent(a.hash.slice(1))); });
|
||||
var ticking = false;
|
||||
function update() {
|
||||
ticking = false;
|
||||
var current = -1;
|
||||
targets.forEach(function (t, i) { if (t && t.getBoundingClientRect().top < innerHeight * 0.3) current = i; });
|
||||
links.forEach(function (a, i) {
|
||||
if (i === current) a.setAttribute('aria-current', 'location'); else a.removeAttribute('aria-current');
|
||||
});
|
||||
}
|
||||
addEventListener('scroll', function () { if (!ticking) { ticking = true; requestAnimationFrame(update); } }, { passive: true });
|
||||
update();
|
||||
})();
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+232
-741
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+212
-689
@@ -5,24 +5,133 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Sign In · Federated Computer</title>
|
||||
<meta name="description" content="Sign in to your Federated Computer account.">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<meta name="theme-color" content="#001a2b">
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="../css/style.css">
|
||||
|
||||
</head>
|
||||
<body id="top">
|
||||
<a class="skip" href="#content">Skip to content</a>
|
||||
<div class="page">
|
||||
|
||||
|
||||
|
||||
<aside class="rail">
|
||||
<div class="rail-bar">
|
||||
<header class="site-head">
|
||||
<div class="wrap head-bar">
|
||||
<a href="../" class="brand" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
|
||||
<nav class="head-nav" aria-label="Site">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="nav-item has-drop">
|
||||
<a href="../solutions/" class="nav-link">Solutions<svg class="nav-caret" viewBox="0 0 10 6" width="10" height="6" aria-hidden="true"><path d="M1 1l4 4 4-4" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></a>
|
||||
<div class="drop">
|
||||
<div class="drop-panel">
|
||||
|
||||
<a href="../solutions/open-source-apps/" class="drop-link">
|
||||
<span class="drop-name">Open-Source Apps</span>
|
||||
<span class="drop-desc">For teams leaving Google Workspace or Microsoft 365</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/apps-and-ai-development/" class="drop-link">
|
||||
<span class="drop-name">Apps + AI Development</span>
|
||||
<span class="drop-desc">Build AI on your own business data</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/ai-for-your-apps/" class="drop-link">
|
||||
<span class="drop-name">AI for Your Own Apps</span>
|
||||
<span class="drop-desc">Connect the open-source apps you already host</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/full-stack/" class="drop-link">
|
||||
<span class="drop-name">The Full Stack</span>
|
||||
<span class="drop-desc">Apps, AI development, and agents that do real work</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/#compare" class="drop-link">
|
||||
<span class="drop-name">Compare All Four</span>
|
||||
<span class="drop-desc">See all four paths side by side</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="nav-item has-drop">
|
||||
<a href="../product/" class="nav-link">Product<svg class="nav-caret" viewBox="0 0 10 6" width="10" height="6" aria-hidden="true"><path d="M1 1l4 4 4-4" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></a>
|
||||
<div class="drop">
|
||||
<div class="drop-panel">
|
||||
|
||||
<a href="../product/federated-core/" class="drop-link">
|
||||
<span class="drop-name">Federated Core</span>
|
||||
<span class="drop-desc">Provisioning, storage, backup, federated learning</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/software-library/" class="drop-link">
|
||||
<span class="drop-name">Software Library</span>
|
||||
<span class="drop-desc">100+ AI-ready open-source apps</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/agent-sandbox/" class="drop-link">
|
||||
<span class="drop-name">Agent Sandbox</span>
|
||||
<span class="drop-desc">High-density, instant-wake AI agents</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/data-controls/" class="drop-link">
|
||||
<span class="drop-name">Data & Controls</span>
|
||||
<span class="drop-desc">Version control, testing, and monitoring</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../ai-privacy-advantage/" class="nav-link">AI Privacy Advantage</a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../pricing/" class="nav-link">Pricing</a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../about/" class="nav-link">About</a>
|
||||
|
||||
|
||||
|
||||
</nav>
|
||||
|
||||
<div class="head-actions">
|
||||
<a href="../sign-in/" class="head-signin" aria-current="page">Sign in</a>
|
||||
<a href="../start-now/" class="btn btn-primary btn-sm">Start now</a>
|
||||
</div>
|
||||
|
||||
<details class="menu">
|
||||
<summary><span class="menu-word">Menu</span><span class="menu-glyph" aria-hidden="true"><i></i><i></i></span></summary>
|
||||
<nav class="menu-panel" aria-label="Site">
|
||||
@@ -60,10 +169,7 @@
|
||||
|
||||
|
||||
|
||||
<a href="../start-now/" class="btn btn-primary">
|
||||
<span class="btn-tile" aria-hidden="true"><svg viewBox="0 0 16 16" width="14" height="14" fill="none"><path d="M3 8h9M8.5 4.5 12 8l-3.5 3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="square"/></svg></span>
|
||||
<span class="btn-label">Start Now</span>
|
||||
</a>
|
||||
<a href="../start-now/" class="btn btn-primary">Start Now<span class="arrow" aria-hidden="true">→</span></a>
|
||||
|
||||
|
||||
|
||||
@@ -78,589 +184,12 @@
|
||||
</nav>
|
||||
</details>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="nav nav-doors" aria-label="Site">
|
||||
<main id="content" tabindex="-1">
|
||||
|
||||
|
||||
<a href="../">Home</a>
|
||||
|
||||
|
||||
|
||||
<a href="../solutions/">Solutions</a>
|
||||
|
||||
|
||||
|
||||
<a href="../product/">Product</a>
|
||||
|
||||
|
||||
|
||||
<a href="../ai-privacy-advantage/">AI Privacy Advantage</a>
|
||||
|
||||
|
||||
|
||||
<a href="../pricing/">Pricing</a>
|
||||
|
||||
|
||||
|
||||
<a href="../about/">About</a>
|
||||
|
||||
|
||||
</nav>
|
||||
|
||||
<div class="rail-actions">
|
||||
<a href="../start-now/" class="btn btn-primary btn-sm"><span class="btn-label">Start Now</span></a>
|
||||
<a href="../sign-in/" class="rail-signin" aria-current="page">Sign In</a>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<nav class="app-wall" aria-label="Apps + AI">
|
||||
<a class="app-wall-head" href="../product/software-library/">
|
||||
<span class="app-wall-title">Apps + AI</span>
|
||||
<span class="app-wall-count">Catalog<span class="arrow" aria-hidden="true">→</span></span>
|
||||
</a>
|
||||
<div class="app-wall-view">
|
||||
<div class="app-wall-scroll">
|
||||
|
||||
<ul class="app-wall-grid">
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../nextcloud/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#nextcloud"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Nextcloud</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#claude"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Claude Code</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/#mcp">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mcp"></use></svg>
|
||||
|
||||
<span class="app-tile-name">MCP</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../jitsi/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jitsi"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jitsi</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../espocrm/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">E</span>
|
||||
<span class="app-tile-name">EspoCRM</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../element/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#element"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Element</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../n8n/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#n8n"></use></svg>
|
||||
|
||||
<span class="app-tile-name">n8n</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../immich/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#immich"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Immich</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jupyter"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jupyter</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../wordpress/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#wordpress"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WordPress</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../freescout/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">F</span>
|
||||
<span class="app-tile-name">FreeScout</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../collabora-writer/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#collabora"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Collabora</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#opencode"></use></svg>
|
||||
|
||||
<span class="app-tile-name">OpenCode</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../vaultwarden/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#vaultwarden"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Vaultwarden</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../calcom/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#calcom"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Cal.com</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../gitea/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#gitea"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Gitea</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../discourse/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#discourse"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Discourse</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#grafana"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Grafana</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../bookstack/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#bookstack"></use></svg>
|
||||
|
||||
<span class="app-tile-name">BookStack</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../docuseal/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#docuseal"></use></svg>
|
||||
|
||||
<span class="app-tile-name">DocuSeal</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plane/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plane"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plane</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../baserow/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#baserow"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Baserow</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../listmonk/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#listmonk"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Listmonk</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#postgresql"></use></svg>
|
||||
|
||||
<span class="app-tile-name">PostgreSQL</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../mautic/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mautic"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Mautic</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plausible-analytics/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plausible"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plausible</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../matomo/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#matomo"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Matomo</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../kimai/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">K</span>
|
||||
<span class="app-tile-name">Kimai</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../castopod/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">C</span>
|
||||
<span class="app-tile-name">Castopod</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../woocommerce-ecommerce/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#woocommerce"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WooCommerce</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../roundcube/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#roundcube"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Roundcube</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../headscale/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">H</span>
|
||||
<span class="app-tile-name">Headscale</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../solutions/ai-for-your-apps/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#add"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Add Yours</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<ul class="app-wall-grid" aria-hidden="true">
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../nextcloud/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#nextcloud"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Nextcloud</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#claude"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Claude Code</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/#mcp" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mcp"></use></svg>
|
||||
|
||||
<span class="app-tile-name">MCP</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../jitsi/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jitsi"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jitsi</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../espocrm/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">E</span>
|
||||
<span class="app-tile-name">EspoCRM</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../element/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#element"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Element</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../n8n/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#n8n"></use></svg>
|
||||
|
||||
<span class="app-tile-name">n8n</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../immich/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#immich"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Immich</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jupyter"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jupyter</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../wordpress/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#wordpress"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WordPress</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../freescout/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">F</span>
|
||||
<span class="app-tile-name">FreeScout</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../collabora-writer/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#collabora"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Collabora</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#opencode"></use></svg>
|
||||
|
||||
<span class="app-tile-name">OpenCode</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../vaultwarden/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#vaultwarden"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Vaultwarden</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../calcom/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#calcom"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Cal.com</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../gitea/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#gitea"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Gitea</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../discourse/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#discourse"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Discourse</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#grafana"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Grafana</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../bookstack/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#bookstack"></use></svg>
|
||||
|
||||
<span class="app-tile-name">BookStack</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../docuseal/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#docuseal"></use></svg>
|
||||
|
||||
<span class="app-tile-name">DocuSeal</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plane/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plane"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plane</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../baserow/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#baserow"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Baserow</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../listmonk/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#listmonk"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Listmonk</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#postgresql"></use></svg>
|
||||
|
||||
<span class="app-tile-name">PostgreSQL</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../mautic/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mautic"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Mautic</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plausible-analytics/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plausible"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plausible</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../matomo/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#matomo"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Matomo</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../kimai/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">K</span>
|
||||
<span class="app-tile-name">Kimai</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../castopod/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">C</span>
|
||||
<span class="app-tile-name">Castopod</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../woocommerce-ecommerce/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#woocommerce"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WooCommerce</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../roundcube/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#roundcube"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Roundcube</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../headscale/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">H</span>
|
||||
<span class="app-tile-name">Headscale</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../solutions/ai-for-your-apps/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#add"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Add Yours</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
</aside>
|
||||
|
||||
<main class="col" id="content" tabindex="-1">
|
||||
|
||||
<section class="form-band">
|
||||
<div class="wrap">
|
||||
<div class="form-page" data-reveal>
|
||||
<p class="eyebrow">Sign In</p>
|
||||
<h1 class="statement">Welcome back</h1>
|
||||
@@ -678,7 +207,7 @@
|
||||
<label><input type="checkbox" name="remember"> Remember me</label>
|
||||
<a href="#">Forgot password?</a>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-primary"><span class="btn-label">Sign In</span></button>
|
||||
<button type="submit" class="btn btn-primary">Sign In</button>
|
||||
</form>
|
||||
|
||||
<p class="form-foot">
|
||||
@@ -690,99 +219,108 @@
|
||||
Having trouble signing in? <a href="mailto:support@federated.computer">Contact Support</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<footer class="foot" data-reveal>
|
||||
<div class="foot-brand">
|
||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||
<ul class="foot-social">
|
||||
<li><a href="https://www.linkedin.com/company/federated-computer" target="_blank" rel="noopener">LinkedIn<span class="arrow" aria-hidden="true">↗</span></a></li><li><a href="https://x.com/federatedcomp" target="_blank" rel="noopener">X<span class="arrow" aria-hidden="true">↗</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</main>
|
||||
<footer class="foot">
|
||||
<div class="wrap">
|
||||
<div class="foot-top-row">
|
||||
<div class="foot-brand">
|
||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||
<ul class="foot-social">
|
||||
<li><a href="https://www.linkedin.com/company/federated-computer" target="_blank" rel="noopener">LinkedIn<span class="arrow" aria-hidden="true">↗</span></a></li><li><a href="https://x.com/federatedcomp" target="_blank" rel="noopener">X<span class="arrow" aria-hidden="true">↗</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="foot-grid">
|
||||
|
||||
<nav class="foot-group" aria-label="Solutions">
|
||||
<span class="foot-head">Solutions</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/apps-and-ai-development/">Apps + AI Development</a></li>
|
||||
|
||||
<li><a href="../solutions/ai-for-your-apps/">AI for Your Own Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/full-stack/">The Full Stack</a></li>
|
||||
|
||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Product">
|
||||
<span class="foot-head">Product</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||
|
||||
<li><a href="../product/software-library/">Software Library</a></li>
|
||||
|
||||
<li><a href="../product/agent-sandbox/">Agent Sandbox</a></li>
|
||||
|
||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||
|
||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Company">
|
||||
<span class="foot-head">Company</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../about/">About</a></li>
|
||||
|
||||
<li><a href="../about/#team">Team</a></li>
|
||||
|
||||
<li><a href="../about/#jobs">Jobs</a></li>
|
||||
|
||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Get Started">
|
||||
<span class="foot-head">Get Started</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../start-now/">Start Now</a></li>
|
||||
|
||||
<li><a href="../sign-in/">Sign In</a></li>
|
||||
|
||||
<li><a href="../pricing/">Pricing</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
<div class="foot-grid">
|
||||
|
||||
<nav class="foot-group" aria-label="Solutions">
|
||||
<span class="foot-head">Solutions</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/apps-and-ai-development/">Apps + AI Development</a></li>
|
||||
|
||||
<li><a href="../solutions/ai-for-your-apps/">AI for Your Own Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/full-stack/">The Full Stack</a></li>
|
||||
|
||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Product">
|
||||
<span class="foot-head">Product</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||
|
||||
<li><a href="../product/software-library/">Software Library</a></li>
|
||||
|
||||
<li><a href="../product/agent-sandbox/">Agent Sandbox</a></li>
|
||||
|
||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||
|
||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Company">
|
||||
<span class="foot-head">Company</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../about/">About</a></li>
|
||||
|
||||
<li><a href="../about/#team">Team</a></li>
|
||||
|
||||
<li><a href="../about/#jobs">Jobs</a></li>
|
||||
|
||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Get Started">
|
||||
<span class="foot-head">Get Started</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../start-now/">Start Now</a></li>
|
||||
|
||||
<li><a href="../sign-in/">Sign In</a></li>
|
||||
|
||||
<li><a href="../pricing/">Pricing</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="foot-legal">
|
||||
<span class="foot-copy">© 2026 Federated Computer, Inc. FedQ'd in Colorado Springs — built on Federated Computer by a team around the world.</span>
|
||||
<a class="foot-policy" href="../privacy-policy/">Privacy Policy</a><a class="foot-policy" href="../terms-and-conditions/">Terms & Conditions</a>
|
||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||
<div class="foot-legal">
|
||||
<span class="foot-copy">© 2026 Federated Computer, Inc. FedQ'd in Colorado Springs — built on Federated Computer by a team around the world.</span>
|
||||
<a class="foot-policy" href="../privacy-policy/">Privacy Policy</a><a class="foot-policy" href="../terms-and-conditions/">Terms & Conditions</a>
|
||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
|
||||
(function () {
|
||||
var root = document.documentElement;
|
||||
var head = document.querySelector('.site-head');
|
||||
function onScroll() { if (head) head.classList.toggle('is-scrolled', scrollY > 8); }
|
||||
addEventListener('scroll', onScroll, { passive: true });
|
||||
onScroll();
|
||||
if (!('IntersectionObserver' in window)) return;
|
||||
root.classList.add('js');
|
||||
|
||||
@@ -792,21 +330,6 @@
|
||||
});
|
||||
}, { rootMargin: '0px 0px -8% 0px' });
|
||||
document.querySelectorAll('[data-reveal]').forEach(function (el) { io.observe(el); });
|
||||
|
||||
var links = [].slice.call(document.querySelectorAll('.nav-here a'));
|
||||
if (!links.length) return;
|
||||
var targets = links.map(function (a) { return document.getElementById(decodeURIComponent(a.hash.slice(1))); });
|
||||
var ticking = false;
|
||||
function update() {
|
||||
ticking = false;
|
||||
var current = -1;
|
||||
targets.forEach(function (t, i) { if (t && t.getBoundingClientRect().top < innerHeight * 0.3) current = i; });
|
||||
links.forEach(function (a, i) {
|
||||
if (i === current) a.setAttribute('aria-current', 'location'); else a.removeAttribute('aria-current');
|
||||
});
|
||||
}
|
||||
addEventListener('scroll', function () { if (!ticking) { ticking = true; requestAnimationFrame(update); } }, { passive: true });
|
||||
update();
|
||||
})();
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+236
-745
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+229
-729
File diff suppressed because it is too large
Load Diff
@@ -5,24 +5,133 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Terms of Service · Federated Computer</title>
|
||||
<meta name="description" content="The terms that govern the relationship between Federated Computer, Inc. and its customers.">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<meta name="theme-color" content="#001a2b">
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="../css/style.css">
|
||||
|
||||
</head>
|
||||
<body id="top">
|
||||
<a class="skip" href="#content">Skip to content</a>
|
||||
<div class="page">
|
||||
|
||||
|
||||
|
||||
<aside class="rail">
|
||||
<div class="rail-bar">
|
||||
<header class="site-head">
|
||||
<div class="wrap head-bar">
|
||||
<a href="../" class="brand" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
|
||||
<nav class="head-nav" aria-label="Site">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="nav-item has-drop">
|
||||
<a href="../solutions/" class="nav-link">Solutions<svg class="nav-caret" viewBox="0 0 10 6" width="10" height="6" aria-hidden="true"><path d="M1 1l4 4 4-4" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></a>
|
||||
<div class="drop">
|
||||
<div class="drop-panel">
|
||||
|
||||
<a href="../solutions/open-source-apps/" class="drop-link">
|
||||
<span class="drop-name">Open-Source Apps</span>
|
||||
<span class="drop-desc">For teams leaving Google Workspace or Microsoft 365</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/apps-and-ai-development/" class="drop-link">
|
||||
<span class="drop-name">Apps + AI Development</span>
|
||||
<span class="drop-desc">Build AI on your own business data</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/ai-for-your-apps/" class="drop-link">
|
||||
<span class="drop-name">AI for Your Own Apps</span>
|
||||
<span class="drop-desc">Connect the open-source apps you already host</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/full-stack/" class="drop-link">
|
||||
<span class="drop-name">The Full Stack</span>
|
||||
<span class="drop-desc">Apps, AI development, and agents that do real work</span>
|
||||
</a>
|
||||
|
||||
<a href="../solutions/#compare" class="drop-link">
|
||||
<span class="drop-name">Compare All Four</span>
|
||||
<span class="drop-desc">See all four paths side by side</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="nav-item has-drop">
|
||||
<a href="../product/" class="nav-link">Product<svg class="nav-caret" viewBox="0 0 10 6" width="10" height="6" aria-hidden="true"><path d="M1 1l4 4 4-4" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></a>
|
||||
<div class="drop">
|
||||
<div class="drop-panel">
|
||||
|
||||
<a href="../product/federated-core/" class="drop-link">
|
||||
<span class="drop-name">Federated Core</span>
|
||||
<span class="drop-desc">Provisioning, storage, backup, federated learning</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/software-library/" class="drop-link">
|
||||
<span class="drop-name">Software Library</span>
|
||||
<span class="drop-desc">100+ AI-ready open-source apps</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/agent-sandbox/" class="drop-link">
|
||||
<span class="drop-name">Agent Sandbox</span>
|
||||
<span class="drop-desc">High-density, instant-wake AI agents</span>
|
||||
</a>
|
||||
|
||||
<a href="../product/data-controls/" class="drop-link">
|
||||
<span class="drop-name">Data & Controls</span>
|
||||
<span class="drop-desc">Version control, testing, and monitoring</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../ai-privacy-advantage/" class="nav-link">AI Privacy Advantage</a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../pricing/" class="nav-link">Pricing</a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="../about/" class="nav-link">About</a>
|
||||
|
||||
|
||||
|
||||
</nav>
|
||||
|
||||
<div class="head-actions">
|
||||
<a href="../sign-in/" class="head-signin">Sign in</a>
|
||||
<a href="../start-now/" class="btn btn-primary btn-sm">Start now</a>
|
||||
</div>
|
||||
|
||||
<details class="menu">
|
||||
<summary><span class="menu-word">Menu</span><span class="menu-glyph" aria-hidden="true"><i></i><i></i></span></summary>
|
||||
<nav class="menu-panel" aria-label="Site">
|
||||
@@ -60,10 +169,7 @@
|
||||
|
||||
|
||||
|
||||
<a href="../start-now/" class="btn btn-primary">
|
||||
<span class="btn-tile" aria-hidden="true"><svg viewBox="0 0 16 16" width="14" height="14" fill="none"><path d="M3 8h9M8.5 4.5 12 8l-3.5 3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="square"/></svg></span>
|
||||
<span class="btn-label">Start Now</span>
|
||||
</a>
|
||||
<a href="../start-now/" class="btn btn-primary">Start Now<span class="arrow" aria-hidden="true">→</span></a>
|
||||
|
||||
|
||||
|
||||
@@ -78,595 +184,20 @@
|
||||
</nav>
|
||||
</details>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="nav nav-doors" aria-label="Site">
|
||||
<main id="content" tabindex="-1">
|
||||
|
||||
|
||||
<a href="../">Home</a>
|
||||
|
||||
|
||||
|
||||
<a href="../solutions/">Solutions</a>
|
||||
|
||||
|
||||
|
||||
<a href="../product/">Product</a>
|
||||
|
||||
|
||||
|
||||
<a href="../ai-privacy-advantage/">AI Privacy Advantage</a>
|
||||
|
||||
|
||||
|
||||
<a href="../pricing/">Pricing</a>
|
||||
|
||||
|
||||
|
||||
<a href="../about/">About</a>
|
||||
|
||||
|
||||
</nav>
|
||||
|
||||
<div class="rail-actions">
|
||||
<a href="../start-now/" class="btn btn-primary btn-sm"><span class="btn-label">Start Now</span></a>
|
||||
<a href="../sign-in/" class="rail-signin">Sign In</a>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<nav class="app-wall" aria-label="Apps + AI">
|
||||
<a class="app-wall-head" href="../product/software-library/">
|
||||
<span class="app-wall-title">Apps + AI</span>
|
||||
<span class="app-wall-count">Catalog<span class="arrow" aria-hidden="true">→</span></span>
|
||||
</a>
|
||||
<div class="app-wall-view">
|
||||
<div class="app-wall-scroll">
|
||||
|
||||
<ul class="app-wall-grid">
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../nextcloud/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#nextcloud"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Nextcloud</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#claude"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Claude Code</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/#mcp">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mcp"></use></svg>
|
||||
|
||||
<span class="app-tile-name">MCP</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../jitsi/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jitsi"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jitsi</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../espocrm/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">E</span>
|
||||
<span class="app-tile-name">EspoCRM</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../element/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#element"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Element</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../n8n/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#n8n"></use></svg>
|
||||
|
||||
<span class="app-tile-name">n8n</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../immich/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#immich"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Immich</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jupyter"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jupyter</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../wordpress/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#wordpress"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WordPress</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../freescout/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">F</span>
|
||||
<span class="app-tile-name">FreeScout</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../collabora-writer/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#collabora"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Collabora</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#opencode"></use></svg>
|
||||
|
||||
<span class="app-tile-name">OpenCode</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../vaultwarden/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#vaultwarden"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Vaultwarden</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../calcom/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#calcom"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Cal.com</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../gitea/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#gitea"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Gitea</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../discourse/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#discourse"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Discourse</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#grafana"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Grafana</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../bookstack/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#bookstack"></use></svg>
|
||||
|
||||
<span class="app-tile-name">BookStack</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../docuseal/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#docuseal"></use></svg>
|
||||
|
||||
<span class="app-tile-name">DocuSeal</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plane/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plane"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plane</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../baserow/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#baserow"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Baserow</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../listmonk/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#listmonk"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Listmonk</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#postgresql"></use></svg>
|
||||
|
||||
<span class="app-tile-name">PostgreSQL</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../mautic/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mautic"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Mautic</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plausible-analytics/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plausible"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plausible</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../matomo/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#matomo"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Matomo</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../kimai/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">K</span>
|
||||
<span class="app-tile-name">Kimai</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../castopod/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">C</span>
|
||||
<span class="app-tile-name">Castopod</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../woocommerce-ecommerce/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#woocommerce"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WooCommerce</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../roundcube/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#roundcube"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Roundcube</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../headscale/">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">H</span>
|
||||
<span class="app-tile-name">Headscale</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../solutions/ai-for-your-apps/">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#add"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Add Yours</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<ul class="app-wall-grid" aria-hidden="true">
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../nextcloud/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#nextcloud"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Nextcloud</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#claude"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Claude Code</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/#mcp" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mcp"></use></svg>
|
||||
|
||||
<span class="app-tile-name">MCP</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../jitsi/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jitsi"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jitsi</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../espocrm/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">E</span>
|
||||
<span class="app-tile-name">EspoCRM</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../element/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#element"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Element</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../n8n/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#n8n"></use></svg>
|
||||
|
||||
<span class="app-tile-name">n8n</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../immich/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#immich"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Immich</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#jupyter"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Jupyter</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../wordpress/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#wordpress"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WordPress</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../freescout/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">F</span>
|
||||
<span class="app-tile-name">FreeScout</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../collabora-writer/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#collabora"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Collabora</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#opencode"></use></svg>
|
||||
|
||||
<span class="app-tile-name">OpenCode</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../vaultwarden/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#vaultwarden"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Vaultwarden</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../calcom/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#calcom"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Cal.com</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../gitea/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#gitea"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Gitea</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../discourse/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#discourse"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Discourse</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#grafana"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Grafana</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../bookstack/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#bookstack"></use></svg>
|
||||
|
||||
<span class="app-tile-name">BookStack</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../docuseal/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#docuseal"></use></svg>
|
||||
|
||||
<span class="app-tile-name">DocuSeal</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plane/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plane"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plane</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../baserow/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#baserow"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Baserow</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../listmonk/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#listmonk"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Listmonk</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../product/software-library/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#postgresql"></use></svg>
|
||||
|
||||
<span class="app-tile-name">PostgreSQL</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../mautic/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#mautic"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Mautic</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../plausible-analytics/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#plausible"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Plausible</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../matomo/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#matomo"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Matomo</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../kimai/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">K</span>
|
||||
<span class="app-tile-name">Kimai</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../castopod/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">C</span>
|
||||
<span class="app-tile-name">Castopod</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../woocommerce-ecommerce/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#woocommerce"></use></svg>
|
||||
|
||||
<span class="app-tile-name">WooCommerce</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../roundcube/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#roundcube"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Roundcube</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../headscale/" tabindex="-1">
|
||||
<span class="app-tile-icon app-tile-letter" aria-hidden="true">H</span>
|
||||
<span class="app-tile-name">Headscale</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="app-tile" href="../solutions/ai-for-your-apps/" tabindex="-1">
|
||||
<svg class="app-tile-icon" aria-hidden="true"><use href="../images/app-icons.svg#add"></use></svg>
|
||||
|
||||
<span class="app-tile-name">Add Yours</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
</aside>
|
||||
|
||||
<main class="col" id="content" tabindex="-1">
|
||||
|
||||
<header class="hero hero-compact">
|
||||
<h1 class="statement">Terms of Service</h1>
|
||||
<p class="dek">Effective date: April 1, 2026</p>
|
||||
<div class="wrap">
|
||||
<div class="hero-copy">
|
||||
<h1 class="statement">Terms of Service</h1>
|
||||
<p class="dek">Effective date: April 1, 2026</p>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<section class="section">
|
||||
<div class="prose doc"><h2 id="1-agreement-overview">1. Agreement Overview</h2>
|
||||
<section class="section section-doc">
|
||||
<div class="wrap"><div class="prose doc"><h2 id="1-agreement-overview">1. Agreement Overview</h2>
|
||||
<p>These Terms of Service (“Agreement”) govern the relationship between you (“Customer”) and Federated Computer, Inc (“Company,” “we,” “us,” or “our”). By engaging our services, you agree to be bound by the terms set forth herein. If you do not agree to these terms, you must not use our services.</p>
|
||||
<h2 id="2-description-of-services">2. Description of Services</h2>
|
||||
<p>Federated Computer, Inc provides managed IT services which may include, but are not limited to:</p>
|
||||
@@ -763,101 +294,108 @@
|
||||
<h2 id="15-entire-agreement">15. Entire Agreement</h2>
|
||||
<p>This Agreement, together with any applicable Statements of Work or service agreements, constitutes the entire agreement between the parties and supersedes all prior understandings, representations, or agreements relating to the subject matter herein.</p>
|
||||
<p>For questions regarding these Terms of Service, please contact us at <a href="mailto:legal@federated.computer">legal@federated.computer</a>.</p>
|
||||
</div>
|
||||
</div></div>
|
||||
</section>
|
||||
|
||||
<footer class="foot" data-reveal>
|
||||
<div class="foot-brand">
|
||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||
<ul class="foot-social">
|
||||
<li><a href="https://www.linkedin.com/company/federated-computer" target="_blank" rel="noopener">LinkedIn<span class="arrow" aria-hidden="true">↗</span></a></li><li><a href="https://x.com/federatedcomp" target="_blank" rel="noopener">X<span class="arrow" aria-hidden="true">↗</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</main>
|
||||
<footer class="foot">
|
||||
<div class="wrap">
|
||||
<div class="foot-top-row">
|
||||
<div class="foot-brand">
|
||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||
</a>
|
||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||
<ul class="foot-social">
|
||||
<li><a href="https://www.linkedin.com/company/federated-computer" target="_blank" rel="noopener">LinkedIn<span class="arrow" aria-hidden="true">↗</span></a></li><li><a href="https://x.com/federatedcomp" target="_blank" rel="noopener">X<span class="arrow" aria-hidden="true">↗</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="foot-grid">
|
||||
|
||||
<nav class="foot-group" aria-label="Solutions">
|
||||
<span class="foot-head">Solutions</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/apps-and-ai-development/">Apps + AI Development</a></li>
|
||||
|
||||
<li><a href="../solutions/ai-for-your-apps/">AI for Your Own Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/full-stack/">The Full Stack</a></li>
|
||||
|
||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Product">
|
||||
<span class="foot-head">Product</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||
|
||||
<li><a href="../product/software-library/">Software Library</a></li>
|
||||
|
||||
<li><a href="../product/agent-sandbox/">Agent Sandbox</a></li>
|
||||
|
||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||
|
||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Company">
|
||||
<span class="foot-head">Company</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../about/">About</a></li>
|
||||
|
||||
<li><a href="../about/#team">Team</a></li>
|
||||
|
||||
<li><a href="../about/#jobs">Jobs</a></li>
|
||||
|
||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Get Started">
|
||||
<span class="foot-head">Get Started</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../start-now/">Start Now</a></li>
|
||||
|
||||
<li><a href="../sign-in/">Sign In</a></li>
|
||||
|
||||
<li><a href="../pricing/">Pricing</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
<div class="foot-grid">
|
||||
|
||||
<nav class="foot-group" aria-label="Solutions">
|
||||
<span class="foot-head">Solutions</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/apps-and-ai-development/">Apps + AI Development</a></li>
|
||||
|
||||
<li><a href="../solutions/ai-for-your-apps/">AI for Your Own Apps</a></li>
|
||||
|
||||
<li><a href="../solutions/full-stack/">The Full Stack</a></li>
|
||||
|
||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Product">
|
||||
<span class="foot-head">Product</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||
|
||||
<li><a href="../product/software-library/">Software Library</a></li>
|
||||
|
||||
<li><a href="../product/agent-sandbox/">Agent Sandbox</a></li>
|
||||
|
||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||
|
||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Company">
|
||||
<span class="foot-head">Company</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../about/">About</a></li>
|
||||
|
||||
<li><a href="../about/#team">Team</a></li>
|
||||
|
||||
<li><a href="../about/#jobs">Jobs</a></li>
|
||||
|
||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<nav class="foot-group" aria-label="Get Started">
|
||||
<span class="foot-head">Get Started</span>
|
||||
<ul class="foot-links">
|
||||
|
||||
<li><a href="../start-now/">Start Now</a></li>
|
||||
|
||||
<li><a href="../sign-in/">Sign In</a></li>
|
||||
|
||||
<li><a href="../pricing/">Pricing</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="foot-legal">
|
||||
<span class="foot-copy">© 2026 Federated Computer, Inc. FedQ'd in Colorado Springs — built on Federated Computer by a team around the world.</span>
|
||||
<a class="foot-policy" href="../privacy-policy/">Privacy Policy</a><a class="foot-policy" href="../terms-and-conditions/">Terms & Conditions</a>
|
||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||
<div class="foot-legal">
|
||||
<span class="foot-copy">© 2026 Federated Computer, Inc. FedQ'd in Colorado Springs — built on Federated Computer by a team around the world.</span>
|
||||
<a class="foot-policy" href="../privacy-policy/">Privacy Policy</a><a class="foot-policy" href="../terms-and-conditions/">Terms & Conditions</a>
|
||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
|
||||
(function () {
|
||||
var root = document.documentElement;
|
||||
var head = document.querySelector('.site-head');
|
||||
function onScroll() { if (head) head.classList.toggle('is-scrolled', scrollY > 8); }
|
||||
addEventListener('scroll', onScroll, { passive: true });
|
||||
onScroll();
|
||||
if (!('IntersectionObserver' in window)) return;
|
||||
root.classList.add('js');
|
||||
|
||||
@@ -867,21 +405,6 @@
|
||||
});
|
||||
}, { rootMargin: '0px 0px -8% 0px' });
|
||||
document.querySelectorAll('[data-reveal]').forEach(function (el) { io.observe(el); });
|
||||
|
||||
var links = [].slice.call(document.querySelectorAll('.nav-here a'));
|
||||
if (!links.length) return;
|
||||
var targets = links.map(function (a) { return document.getElementById(decodeURIComponent(a.hash.slice(1))); });
|
||||
var ticking = false;
|
||||
function update() {
|
||||
ticking = false;
|
||||
var current = -1;
|
||||
targets.forEach(function (t, i) { if (t && t.getBoundingClientRect().top < innerHeight * 0.3) current = i; });
|
||||
links.forEach(function (a, i) {
|
||||
if (i === current) a.setAttribute('aria-current', 'location'); else a.removeAttribute('aria-current');
|
||||
});
|
||||
}
|
||||
addEventListener('scroll', function () { if (!ticking) { ticking = true; requestAnimationFrame(update); } }, { passive: true });
|
||||
update();
|
||||
})();
|
||||
|
||||
|
||||
|
||||
+224
-703
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+224
-703
File diff suppressed because it is too large
Load Diff
+812
-807
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user