move to top banner
This commit is contained in:
@@ -1,18 +1,17 @@
|
|||||||
# Federated Computer — Hugo Site
|
# Federated Computer — Hugo Site
|
||||||
|
|
||||||
A Hugo template for the Federated Computer site, laid out like
|
A Hugo template for the Federated Computer site, laid out like
|
||||||
[supermemory.ai](https://supermemory.ai): a sticky left rail (logo, the
|
[nebius.com](https://nebius.com): a sticky dark navy top bar with dropdown
|
||||||
site's pages, Start Now / Sign In, and an "On this page" index of the
|
menus, a full-bleed navy hero (copy left, a visual right), then full-width
|
||||||
current page's sections) beside a single narrow reading column. White
|
bands that alternate white and light grey inside a centered 1280px
|
||||||
page, near-black ink, one electric blue (`#0562ef`), hairline rules,
|
container. Big, tight Inter headlines, rounded filled cards, a lime primary
|
||||||
square corners, no shadows. The product's four layers
|
button (`#e0ff4f`) and a violet accent (`#614efa`). Stats, the closing call
|
||||||
(Federated Core → Software Library → Agent Sandbox → Data & Controls)
|
to action, and the footer return to navy. Copy still to be written is
|
||||||
recur as stacked bars — in the blue hero "field", the layer-fit panels,
|
filled with "lorem ipsum".
|
||||||
and the closing call to action.
|
|
||||||
|
|
||||||
## Requirements
|
## 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
|
## Running it locally
|
||||||
|
|
||||||
@@ -48,13 +47,13 @@ partial in `layouts/partials/sections/`.
|
|||||||
Any section can take:
|
Any section can take:
|
||||||
- `id: "some-id"` — anchor for links (e.g. `/start-now/#pricing`). Without
|
- `id: "some-id"` — anchor for links (e.g. `/start-now/#pricing`). Without
|
||||||
one, the id is made from `toc`, `kicker`, or `headline`.
|
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`,
|
Sections alternate white and grey bands automatically (cards inside take
|
||||||
and `dark` options are accepted but no longer change the look. `final-cta`
|
the opposite tone), so the older `bordered`, `tinted`, and `dark` options
|
||||||
always renders as the dark closing plate.
|
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)
|
### 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)
|
- `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
|
- `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
|
- `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
|
- `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 `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
|
- `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
|
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`
|
Every section type now renders `kicker`, `headline`, and an optional `lede`
|
||||||
through `partials/sections/head.html`.
|
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),
|
Site-wide links live in `hugo.toml`: `params.demoUrl` (the booking page),
|
||||||
`params.supportUrl` (the help portal), and the `footer_social` / `footer_legal` menus.
|
`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
|
The home page's `logos` section draws its tiles from `data/app_wall.yaml`
|
||||||
of the column on screens wider than 1000px and taller than 720px. Tiles come
|
(`name`, `url`, optional `icon`). Icons are symbols in the sprite
|
||||||
from `data/app_wall.yaml` (`name`, `url`, optional `icon`). Icons are symbols
|
`static/images/app-icons.svg` (from Simple Icons, CC0; DocuSeal from its own
|
||||||
in the sprite `static/images/app-icons.svg` (from Simple Icons, CC0; DocuSeal
|
repo). A tile without an `icon` shows its first letter.
|
||||||
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.
|
Dropdown entries in the top bar can carry a one-line description:
|
||||||
|
`[menu.product.params] desc = "..."` in `hugo.toml`.
|
||||||
|
|
||||||
### Adding a new page
|
### Adding a new page
|
||||||
|
|
||||||
@@ -156,9 +160,9 @@ layouts/
|
|||||||
product/list.html Product overview (renders sections)
|
product/list.html Product overview (renders sections)
|
||||||
partials/
|
partials/
|
||||||
head.html, footer.html
|
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
|
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
|
sections/*.html One partial per section type
|
||||||
static/
|
static/
|
||||||
css/style.css The whole design system
|
css/style.css The whole design system
|
||||||
@@ -167,17 +171,20 @@ hugo.toml Site config + nav/footer menus
|
|||||||
|
|
||||||
## Design notes
|
## Design notes
|
||||||
|
|
||||||
- **Layout:** `.page` is a two-column grid — the rail (`layouts/partials/header.html`)
|
- **Layout:** a sticky top bar (`layouts/partials/header.html`), then
|
||||||
and the column (`main.col`, which also holds the footer). Below 1000px the
|
`main`, then the footer — all full width. Content sits in `.wrap`
|
||||||
rail becomes a one-line top bar with a Menu toggle.
|
(max 1280px, centered). Below 1080px the nav folds into a Menu toggle.
|
||||||
- **Type:** Geist (reading) and Geist Mono (caps labels, numbers, buttons),
|
- **Type:** Inter (headlines and reading) and JetBrains Mono (small caps
|
||||||
loaded from Google Fonts in `layouts/partials/head.html`.
|
labels and numbers), loaded from Google Fonts in `layouts/partials/head.html`.
|
||||||
- **Color tokens** are CSS custom properties at the top of
|
- **Color tokens** are CSS custom properties at the top of
|
||||||
`static/css/style.css` (`--ink`, `--ink-68`, `--rule`, `--paper`,
|
`static/css/style.css` (`--navy-deep`, `--lime`, `--violet`, `--paper`,
|
||||||
`--blue`, etc.) — change the palette there and it cascades everywhere.
|
`--ink`, `--rule`, etc.) — change the palette there and it cascades
|
||||||
- **Buttons:** CTA `style: primary` is the solid blue button with an arrow
|
everywhere. Each section sets `--section-bg` and `--surface` (the card
|
||||||
tile, `ghost` the pale blue one with corner ticks, `text` a quiet link.
|
tone), which flip on alternating bands.
|
||||||
A trailing `→` in a label is dropped; the arrow is drawn for you.
|
- **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
|
- **JS is optional.** A small inline script in `baseof.html` fades sections
|
||||||
in and highlights the current "On this page" entry. Without it everything
|
in and darkens the top bar on scroll. Without it everything still shows;
|
||||||
still shows; the mobile menu, FAQ, and app directory use native `<details>`.
|
the dropdowns are CSS (hover and focus), and the mobile menu, FAQ, and
|
||||||
|
app directory use native `<details>`.
|
||||||
|
|||||||
@@ -65,6 +65,15 @@ sections:
|
|||||||
body: |
|
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.
|
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
|
- type: layers
|
||||||
tinted: true
|
tinted: true
|
||||||
kicker: "The Federated Advantage"
|
kicker: "The Federated Advantage"
|
||||||
@@ -120,6 +129,20 @@ sections:
|
|||||||
url: "/solutions/#compare"
|
url: "/solutions/#compare"
|
||||||
style: text
|
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
|
- type: text
|
||||||
bordered: true
|
bordered: true
|
||||||
kicker: "The Architecture"
|
kicker: "The Architecture"
|
||||||
@@ -176,6 +199,16 @@ sections:
|
|||||||
label: "Try the full calculator"
|
label: "Try the full calculator"
|
||||||
url: "/pricing/#savings"
|
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
|
- type: text
|
||||||
bordered: true
|
bordered: true
|
||||||
kicker: "Our Team"
|
kicker: "Our Team"
|
||||||
@@ -187,6 +220,29 @@ sections:
|
|||||||
url: "/about/"
|
url: "/about/"
|
||||||
style: text
|
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
|
- type: final-cta
|
||||||
dark: true
|
dark: true
|
||||||
headline: "Save money. Keep your data. Get AI that actually works for you."
|
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"
|
name = "Open-Source Apps"
|
||||||
url = "/solutions/open-source-apps/"
|
url = "/solutions/open-source-apps/"
|
||||||
weight = 10
|
weight = 10
|
||||||
|
[menu.solutions.params]
|
||||||
|
desc = "For teams leaving Google Workspace or Microsoft 365"
|
||||||
[[menu.solutions]]
|
[[menu.solutions]]
|
||||||
name = "Apps + AI Development"
|
name = "Apps + AI Development"
|
||||||
url = "/solutions/apps-and-ai-development/"
|
url = "/solutions/apps-and-ai-development/"
|
||||||
weight = 20
|
weight = 20
|
||||||
|
[menu.solutions.params]
|
||||||
|
desc = "Build AI on your own business data"
|
||||||
[[menu.solutions]]
|
[[menu.solutions]]
|
||||||
name = "AI for Your Own Apps"
|
name = "AI for Your Own Apps"
|
||||||
url = "/solutions/ai-for-your-apps/"
|
url = "/solutions/ai-for-your-apps/"
|
||||||
weight = 30
|
weight = 30
|
||||||
|
[menu.solutions.params]
|
||||||
|
desc = "Connect the open-source apps you already host"
|
||||||
[[menu.solutions]]
|
[[menu.solutions]]
|
||||||
name = "The Full Stack"
|
name = "The Full Stack"
|
||||||
url = "/solutions/full-stack/"
|
url = "/solutions/full-stack/"
|
||||||
weight = 40
|
weight = 40
|
||||||
|
[menu.solutions.params]
|
||||||
|
desc = "Apps, AI development, and agents that do real work"
|
||||||
[[menu.solutions]]
|
[[menu.solutions]]
|
||||||
name = "Compare All Four"
|
name = "Compare All Four"
|
||||||
url = "/solutions/#compare"
|
url = "/solutions/#compare"
|
||||||
weight = 50
|
weight = 50
|
||||||
|
[menu.solutions.params]
|
||||||
|
desc = "See all four paths side by side"
|
||||||
|
|
||||||
[[menu.product]]
|
[[menu.product]]
|
||||||
name = "Federated Core"
|
name = "Federated Core"
|
||||||
url = "/product/federated-core/"
|
url = "/product/federated-core/"
|
||||||
weight = 10
|
weight = 10
|
||||||
|
[menu.product.params]
|
||||||
|
desc = "Provisioning, storage, backup, federated learning"
|
||||||
[[menu.product]]
|
[[menu.product]]
|
||||||
name = "Software Library"
|
name = "Software Library"
|
||||||
url = "/product/software-library/"
|
url = "/product/software-library/"
|
||||||
weight = 20
|
weight = 20
|
||||||
|
[menu.product.params]
|
||||||
|
desc = "100+ AI-ready open-source apps"
|
||||||
[[menu.product]]
|
[[menu.product]]
|
||||||
name = "Agent Sandbox"
|
name = "Agent Sandbox"
|
||||||
url = "/product/agent-sandbox/"
|
url = "/product/agent-sandbox/"
|
||||||
weight = 30
|
weight = 30
|
||||||
|
[menu.product.params]
|
||||||
|
desc = "High-density, instant-wake AI agents"
|
||||||
[[menu.product]]
|
[[menu.product]]
|
||||||
name = "Data & Controls"
|
name = "Data & Controls"
|
||||||
url = "/product/data-controls/"
|
url = "/product/data-controls/"
|
||||||
weight = 40
|
weight = 40
|
||||||
|
[menu.product.params]
|
||||||
|
desc = "Version control, testing, and monitoring"
|
||||||
|
|
||||||
[[menu.footer_solutions]]
|
[[menu.footer_solutions]]
|
||||||
name = "Open-Source Apps"
|
name = "Open-Source Apps"
|
||||||
|
|||||||
@@ -5,18 +5,20 @@
|
|||||||
</head>
|
</head>
|
||||||
<body id="top">
|
<body id="top">
|
||||||
<a class="skip" href="#content">Skip to content</a>
|
<a class="skip" href="#content">Skip to content</a>
|
||||||
<div class="page">
|
{{ partial "header.html" . }}
|
||||||
{{ partial "header.html" . }}
|
<main id="content" tabindex="-1">
|
||||||
<main class="col" id="content" tabindex="-1">
|
{{ block "main" . }}{{ end }}
|
||||||
{{ block "main" . }}{{ end }}
|
</main>
|
||||||
{{ partial "footer.html" . }}
|
{{ partial "footer.html" . }}
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
<script>
|
<script>
|
||||||
/* Progressive only: fade sections in as they scroll into view, and mark
|
/* Progressive only: fade sections in as they scroll into view, and
|
||||||
the rail's "On this page" link for the section being read. */
|
darken the top bar once the page has scrolled. */
|
||||||
(function () {
|
(function () {
|
||||||
var root = document.documentElement;
|
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;
|
if (!('IntersectionObserver' in window)) return;
|
||||||
root.classList.add('js');
|
root.classList.add('js');
|
||||||
|
|
||||||
@@ -26,21 +28,6 @@
|
|||||||
});
|
});
|
||||||
}, { rootMargin: '0px 0px -8% 0px' });
|
}, { rootMargin: '0px 0px -8% 0px' });
|
||||||
document.querySelectorAll('[data-reveal]').forEach(function (el) { io.observe(el); });
|
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. */
|
/* 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. */}}
|
{{/* Long-form legal text (Privacy Policy, Terms): a plain heading, then the Markdown body. */}}
|
||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
<header class="hero hero-compact">
|
<header class="hero hero-compact">
|
||||||
<h1 class="statement">{{ .Title }}</h1>
|
<div class="wrap">
|
||||||
{{ with .Params.effective }}<p class="dek">Effective date: {{ . }}</p>{{ end }}
|
<div class="hero-copy">
|
||||||
|
<h1 class="statement">{{ .Title }}</h1>
|
||||||
|
{{ with .Params.effective }}<p class="dek">Effective date: {{ . }}</p>{{ end }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<section class="section">
|
<section class="section section-doc">
|
||||||
<div class="prose doc">{{ .Content }}</div>
|
<div class="wrap"><div class="prose doc">{{ .Content }}</div></div>
|
||||||
</section>
|
</section>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
|
<section class="form-band">
|
||||||
|
<div class="wrap">
|
||||||
<div class="form-page" data-reveal>
|
<div class="form-page" data-reveal>
|
||||||
<p class="eyebrow">Sign In</p>
|
<p class="eyebrow">Sign In</p>
|
||||||
<h1 class="statement">{{ .Params.heading | default "Welcome back" }}</h1>
|
<h1 class="statement">{{ .Params.heading | default "Welcome back" }}</h1>
|
||||||
@@ -16,7 +18,7 @@
|
|||||||
<label><input type="checkbox" name="remember"> Remember me</label>
|
<label><input type="checkbox" name="remember"> Remember me</label>
|
||||||
<a href="#">Forgot password?</a>
|
<a href="#">Forgot password?</a>
|
||||||
</div>
|
</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>
|
</form>
|
||||||
|
|
||||||
<p class="form-foot">
|
<p class="form-foot">
|
||||||
@@ -28,4 +30,6 @@
|
|||||||
Having trouble signing in? <a href="mailto:{{ .Site.Params.supportEmail }}">Contact Support</a>
|
Having trouble signing in? <a href="mailto:{{ .Site.Params.supportEmail }}">Contact Support</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -5,15 +5,18 @@
|
|||||||
*/}}
|
*/}}
|
||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
<header class="hero hero-compact">
|
<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>
|
<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>
|
<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 }}
|
{{ with .Params.dek }}<p class="dek" data-reveal style="--d:140ms">{{ . | markdownify }}</p>{{ end }}
|
||||||
<div class="actions" data-reveal style="--d:200ms">
|
<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")) }}
|
{{ 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></div>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<section class="section" data-reveal>
|
<section class="section section-facts" data-reveal>
|
||||||
|
<div class="wrap">
|
||||||
<dl class="app-facts">
|
<dl class="app-facts">
|
||||||
{{ with .Params.replaces }}<div><dt>Replaces</dt><dd>{{ . }}</dd></div>{{ end }}
|
{{ 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>
|
<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 }}
|
{{ 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>
|
</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>
|
<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>
|
||||||
|
|
||||||
<section class="section" data-reveal>
|
<section class="section section-doc" data-reveal>
|
||||||
<div class="prose doc">{{ .Content }}</div>
|
<div class="wrap"><div class="prose doc">{{ .Content }}</div></div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{ partial "sections/final-cta.html" (dict
|
{{ partial "sections/final-cta.html" (dict
|
||||||
|
|||||||
@@ -1,31 +1,35 @@
|
|||||||
<footer class="foot" data-reveal>
|
<footer class="foot">
|
||||||
<div class="foot-brand">
|
<div class="wrap">
|
||||||
<a href="{{ "/" | relURL }}" class="foot-mark" aria-label="Federated Computer, home">
|
<div class="foot-top-row">
|
||||||
<img src="{{ "images/logo.png" | relURL }}" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
<div class="foot-brand">
|
||||||
</a>
|
<a href="{{ "/" | relURL }}" class="foot-mark" aria-label="Federated Computer, home">
|
||||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
<img src="{{ "images/logo.png" | relURL }}" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
</a>
|
||||||
<ul class="foot-social">
|
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||||
{{ range site.Menus.footer_social }}<li><a href="{{ .URL }}" target="_blank" rel="noopener">{{ .Name }}<span class="arrow" aria-hidden="true">↗</span></a></li>{{ end }}
|
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||||
</ul>
|
<ul class="foot-social">
|
||||||
</div>
|
{{ range site.Menus.footer_social }}<li><a href="{{ .URL }}" target="_blank" rel="noopener">{{ .Name }}<span class="arrow" aria-hidden="true">↗</span></a></li>{{ end }}
|
||||||
|
|
||||||
<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>
|
</ul>
|
||||||
</nav>
|
</div>
|
||||||
{{ end }}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="foot-legal">
|
<div class="foot-grid">
|
||||||
<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 (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")) }}
|
||||||
{{ range site.Menus.footer_legal }}<a class="foot-policy" href="{{ .URL | relURL }}">{{ .Name }}</a>{{ end }}
|
<nav class="foot-group" aria-label="{{ .title }}">
|
||||||
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
<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>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<title>{{ if .IsHome }}{{ .Site.Title }} — {{ .Site.Params.tagline }}{{ else }}{{ .Title }} · {{ .Site.Title }}{{ end }}</title>
|
<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="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.googleapis.com">
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
<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 }}">
|
<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
|
The top bar: logo, the site's pages (with dropdown panels for menus that
|
||||||
an index of the sections on this page. Sticky beside the column on wide
|
set `dropdown`), and the two account actions. Sticky on every screen;
|
||||||
screens; a one-line bar with a Menu toggle below 1000px.
|
below 1000px the pages fold into a Menu toggle (a <details>, so it works
|
||||||
|
without JS).
|
||||||
*/}}
|
*/}}
|
||||||
{{ $page := . }}
|
{{ $page := . }}
|
||||||
<aside class="rail">
|
<header class="site-head">
|
||||||
<div class="rail-bar">
|
<div class="wrap head-bar">
|
||||||
<a href="{{ "/" | relURL }}" class="brand" aria-label="Federated Computer, home">
|
<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">
|
<img src="{{ "images/logo.png" | relURL }}" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||||
</a>
|
</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">
|
<details class="menu">
|
||||||
<summary><span class="menu-word">Menu</span><span class="menu-glyph" aria-hidden="true"><i></i><i></i></span></summary>
|
<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">
|
<nav class="menu-panel" aria-label="Site">
|
||||||
@@ -27,72 +59,4 @@
|
|||||||
</nav>
|
</nav>
|
||||||
</details>
|
</details>
|
||||||
</div>
|
</div>
|
||||||
|
</header>
|
||||||
<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>
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{{/*
|
{{/*
|
||||||
Anchor id for a section: its own `id`, else one made from its `toc`,
|
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
|
`kicker`, or `headline`. Used by the section wrapper and by the pricing
|
||||||
"On this page" index so the two always agree.
|
switch.
|
||||||
*/}}
|
*/}}
|
||||||
{{ $id := "" }}
|
{{ $id := "" }}
|
||||||
{{ with .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,
|
Buttons. `primary` is the solid lime button, `ghost` the outlined
|
||||||
`ghost` the pale blue secondary with corner ticks, `text` a quiet link
|
secondary, `text` a quiet link with an arrow. Any trailing "→" in a
|
||||||
with an arrow. Any trailing "→" in a label is dropped — the arrow is drawn.
|
label is dropped — the arrow is drawn.
|
||||||
*/}}
|
*/}}
|
||||||
{{ range . }}
|
{{ range . }}
|
||||||
{{ $label := replaceRE `\s*[→↗]\s*$` "" .label }}
|
{{ $label := replaceRE `\s*[→↗]\s*$` "" .label }}
|
||||||
@@ -12,9 +12,6 @@
|
|||||||
{{ else if eq .style "text" }}
|
{{ else if eq .style "text" }}
|
||||||
<a href="{{ $href }}" class="more">{{ $label }}<span class="arrow" aria-hidden="true">{{ if $external }}↗{{ else }}→{{ end }}</span></a>
|
<a href="{{ $href }}" class="more">{{ $label }}<span class="arrow" aria-hidden="true">{{ if $external }}↗{{ else }}→{{ end }}</span></a>
|
||||||
{{ else }}
|
{{ else }}
|
||||||
<a href="{{ $href }}" class="btn btn-primary">
|
<a href="{{ $href }}" class="btn btn-primary">{{ $label }}<span class="arrow" aria-hidden="true">{{ if $external }}↗{{ else }}→{{ end }}</span></a>
|
||||||
<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>
|
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
{{ $s := . }}
|
{{ $s := . }}
|
||||||
<aside class="cta" data-reveal>
|
<aside class="cta" data-reveal>
|
||||||
<h2 class="cta-title">{{ $s.headline | markdownify }}</h2>
|
<div class="wrap cta-inner">
|
||||||
{{ with $s.body }}<p class="cta-text">{{ . | markdownify }}</p>{{ end }}
|
<div class="cta-copy">
|
||||||
{{ if $s.ctas }}<div class="actions">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
<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>
|
</aside>
|
||||||
|
|||||||
@@ -1,26 +1,30 @@
|
|||||||
{{/*
|
{{/*
|
||||||
The opening of every page: an optional note (the eyebrow), the statement,
|
The opening of every page: a full-bleed dark band. On the left, an
|
||||||
the dek, the actions — then either the layer panel (when `fit:` is set)
|
optional note (the eyebrow), the statement, the dek, the actions; on the
|
||||||
or the field, a blue plate with the platform's four layers drawn as bars.
|
right, the agent log (when `log:` is set), the layer panel (when `fit:`
|
||||||
`bars: false` drops the field.
|
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 := . }}
|
{{ $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 }}
|
{{ 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>
|
<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 }}
|
{{ 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 }}
|
{{ if $s.ctas }}<div class="actions" data-reveal style="--d:200ms">{{ partial "sections/ctas.html" $s.ctas }}</div>{{ end }}
|
||||||
|
</div>
|
||||||
|
|
||||||
{{ with $s.log }}
|
{{ with $s.log }}
|
||||||
{{/*
|
{{/*
|
||||||
An agent's activity log, typed out line by line (see the script below).
|
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,
|
Lines take `tag` + `text`; `think: true` marks a reasoning step (greyed,
|
||||||
with a pause); `done: true` closes the run. The window keeps a fixed
|
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
|
height and scrolls as lines arrive. `logCaption` credits the photo.
|
||||||
a photo; `logCaption` credits it.
|
|
||||||
*/}}
|
*/}}
|
||||||
<figure class="hero-field hero-log{{ if $s.logImage }} has-image{{ end }}" data-reveal style="--d:260ms">
|
<figure class="hero-log" data-reveal style="--d:260ms">
|
||||||
{{ with $s.logImage }}<img class="log-bg" src="{{ . | relURL }}" alt="" fetchpriority="high">{{ end }}
|
|
||||||
<div class="log-window">
|
<div class="log-window">
|
||||||
<div class="log-bar">
|
<div class="log-bar">
|
||||||
<span class="log-title">{{ $s.logTitle | default "agent · your-company.federated.computer" }}</span>
|
<span class="log-title">{{ $s.logTitle | default "agent · your-company.federated.computer" }}</span>
|
||||||
@@ -37,7 +41,6 @@
|
|||||||
</ol>
|
</ol>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{ with $s.logCaption }}<figcaption class="log-caption">{{ . }}</figcaption>{{ end }}
|
|
||||||
</figure>
|
</figure>
|
||||||
<script>
|
<script>
|
||||||
(function () {
|
(function () {
|
||||||
@@ -106,4 +109,6 @@
|
|||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
</div>
|
||||||
|
{{ with $s.logCaption }}<p class="hero-caption">{{ . }}</p>{{ end }}
|
||||||
</header>
|
</header>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
<span class="entry-title">{{ $item.title }}</span>
|
<span class="entry-title">{{ $item.title }}</span>
|
||||||
<span class="entry-text">{{ $item.body | markdownify }}</span>
|
<span class="entry-text">{{ $item.body | markdownify }}</span>
|
||||||
</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>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
{{ end }}
|
{{ 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 := . }}
|
{{ $s := . }}
|
||||||
{{ $id := partial "section-id.html" $s }}
|
{{ $id := partial "section-id.html" $s }}
|
||||||
<section class="section section-{{ $s.type }}"{{ with $id }} id="{{ . }}"{{ end }} data-reveal>
|
<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>
|
</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">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<title>Privacy Policy · Federated Computer</title>
|
<title>Privacy Policy · Federated Computer</title>
|
||||||
<meta name="description" content="How Federated Computer collects, uses, and safeguards your information.">
|
<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.googleapis.com">
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
<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">
|
<link rel="stylesheet" href="../css/style.css">
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body id="top">
|
<body id="top">
|
||||||
<a class="skip" href="#content">Skip to content</a>
|
<a class="skip" href="#content">Skip to content</a>
|
||||||
<div class="page">
|
|
||||||
|
|
||||||
|
|
||||||
<aside class="rail">
|
<header class="site-head">
|
||||||
<div class="rail-bar">
|
<div class="wrap head-bar">
|
||||||
<a href="../" class="brand" aria-label="Federated Computer, home">
|
<a href="../" class="brand" aria-label="Federated Computer, home">
|
||||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||||
</a>
|
</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">
|
<details class="menu">
|
||||||
<summary><span class="menu-word">Menu</span><span class="menu-glyph" aria-hidden="true"><i></i><i></i></span></summary>
|
<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">
|
<nav class="menu-panel" aria-label="Site">
|
||||||
@@ -60,10 +169,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a href="../start-now/" class="btn btn-primary">
|
<a href="../start-now/" class="btn btn-primary">Start Now<span class="arrow" aria-hidden="true">→</span></a>
|
||||||
<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>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -78,595 +184,20 @@
|
|||||||
</nav>
|
</nav>
|
||||||
</details>
|
</details>
|
||||||
</div>
|
</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">
|
<header class="hero hero-compact">
|
||||||
<h1 class="statement">Privacy Policy</h1>
|
<div class="wrap">
|
||||||
<p class="dek">Effective date: December 15, 2024</p>
|
<div class="hero-copy">
|
||||||
|
<h1 class="statement">Privacy Policy</h1>
|
||||||
|
<p class="dek">Effective date: December 15, 2024</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<section class="section">
|
<section class="section section-doc">
|
||||||
<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>
|
<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>
|
<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>
|
<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>
|
<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>
|
<li>Email: <a href="mailto:info@federated.computer">info@federated.computer</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>By using our website, you acknowledge that you have read and understand this Privacy Policy and agree to its terms.</p>
|
<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>
|
</section>
|
||||||
|
|
||||||
<footer class="foot" data-reveal>
|
</main>
|
||||||
<div class="foot-brand">
|
<footer class="foot">
|
||||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
<div class="wrap">
|
||||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
<div class="foot-top-row">
|
||||||
</a>
|
<div class="foot-brand">
|
||||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||||
<ul class="foot-social">
|
</a>
|
||||||
<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>
|
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||||
</ul>
|
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||||
</div>
|
<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">
|
<div class="foot-grid">
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Solutions">
|
<nav class="foot-group" aria-label="Solutions">
|
||||||
<span class="foot-head">Solutions</span>
|
<span class="foot-head">Solutions</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
<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/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/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/full-stack/">The Full Stack</a></li>
|
||||||
|
|
||||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Product">
|
<nav class="foot-group" aria-label="Product">
|
||||||
<span class="foot-head">Product</span>
|
<span class="foot-head">Product</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||||
|
|
||||||
<li><a href="../product/software-library/">Software Library</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/agent-sandbox/">Agent Sandbox</a></li>
|
||||||
|
|
||||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||||
|
|
||||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Company">
|
<nav class="foot-group" aria-label="Company">
|
||||||
<span class="foot-head">Company</span>
|
<span class="foot-head">Company</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../about/">About</a></li>
|
<li><a href="../about/">About</a></li>
|
||||||
|
|
||||||
<li><a href="../about/#team">Team</a></li>
|
<li><a href="../about/#team">Team</a></li>
|
||||||
|
|
||||||
<li><a href="../about/#jobs">Jobs</a></li>
|
<li><a href="../about/#jobs">Jobs</a></li>
|
||||||
|
|
||||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Get Started">
|
<nav class="foot-group" aria-label="Get Started">
|
||||||
<span class="foot-head">Get Started</span>
|
<span class="foot-head">Get Started</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../start-now/">Start Now</a></li>
|
<li><a href="../start-now/">Start Now</a></li>
|
||||||
|
|
||||||
<li><a href="../sign-in/">Sign In</a></li>
|
<li><a href="../sign-in/">Sign In</a></li>
|
||||||
|
|
||||||
<li><a href="../pricing/">Pricing</a></li>
|
<li><a href="../pricing/">Pricing</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="foot-legal">
|
<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>
|
<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-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>
|
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
|
|
||||||
(function () {
|
(function () {
|
||||||
var root = document.documentElement;
|
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;
|
if (!('IntersectionObserver' in window)) return;
|
||||||
root.classList.add('js');
|
root.classList.add('js');
|
||||||
|
|
||||||
@@ -844,21 +382,6 @@
|
|||||||
});
|
});
|
||||||
}, { rootMargin: '0px 0px -8% 0px' });
|
}, { rootMargin: '0px 0px -8% 0px' });
|
||||||
document.querySelectorAll('[data-reveal]').forEach(function (el) { io.observe(el); });
|
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">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<title>Sign In · Federated Computer</title>
|
<title>Sign In · Federated Computer</title>
|
||||||
<meta name="description" content="Sign in to your Federated Computer account.">
|
<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.googleapis.com">
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
<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">
|
<link rel="stylesheet" href="../css/style.css">
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body id="top">
|
<body id="top">
|
||||||
<a class="skip" href="#content">Skip to content</a>
|
<a class="skip" href="#content">Skip to content</a>
|
||||||
<div class="page">
|
|
||||||
|
|
||||||
|
|
||||||
<aside class="rail">
|
<header class="site-head">
|
||||||
<div class="rail-bar">
|
<div class="wrap head-bar">
|
||||||
<a href="../" class="brand" aria-label="Federated Computer, home">
|
<a href="../" class="brand" aria-label="Federated Computer, home">
|
||||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||||
</a>
|
</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">
|
<details class="menu">
|
||||||
<summary><span class="menu-word">Menu</span><span class="menu-glyph" aria-hidden="true"><i></i><i></i></span></summary>
|
<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">
|
<nav class="menu-panel" aria-label="Site">
|
||||||
@@ -60,10 +169,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a href="../start-now/" class="btn btn-primary">
|
<a href="../start-now/" class="btn btn-primary">Start Now<span class="arrow" aria-hidden="true">→</span></a>
|
||||||
<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>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -78,589 +184,12 @@
|
|||||||
</nav>
|
</nav>
|
||||||
</details>
|
</details>
|
||||||
</div>
|
</div>
|
||||||
|
</header>
|
||||||
|
|
||||||
<nav class="nav nav-doors" aria-label="Site">
|
<main id="content" tabindex="-1">
|
||||||
|
|
||||||
|
<section class="form-band">
|
||||||
<a href="../">Home</a>
|
<div class="wrap">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<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">
|
|
||||||
|
|
||||||
<div class="form-page" data-reveal>
|
<div class="form-page" data-reveal>
|
||||||
<p class="eyebrow">Sign In</p>
|
<p class="eyebrow">Sign In</p>
|
||||||
<h1 class="statement">Welcome back</h1>
|
<h1 class="statement">Welcome back</h1>
|
||||||
@@ -678,7 +207,7 @@
|
|||||||
<label><input type="checkbox" name="remember"> Remember me</label>
|
<label><input type="checkbox" name="remember"> Remember me</label>
|
||||||
<a href="#">Forgot password?</a>
|
<a href="#">Forgot password?</a>
|
||||||
</div>
|
</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>
|
</form>
|
||||||
|
|
||||||
<p class="form-foot">
|
<p class="form-foot">
|
||||||
@@ -690,99 +219,108 @@
|
|||||||
Having trouble signing in? <a href="mailto:support@federated.computer">Contact Support</a>
|
Having trouble signing in? <a href="mailto:support@federated.computer">Contact Support</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
<footer class="foot" data-reveal>
|
</main>
|
||||||
<div class="foot-brand">
|
<footer class="foot">
|
||||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
<div class="wrap">
|
||||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
<div class="foot-top-row">
|
||||||
</a>
|
<div class="foot-brand">
|
||||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||||
<ul class="foot-social">
|
</a>
|
||||||
<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>
|
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||||
</ul>
|
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||||
</div>
|
<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">
|
<div class="foot-grid">
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Solutions">
|
<nav class="foot-group" aria-label="Solutions">
|
||||||
<span class="foot-head">Solutions</span>
|
<span class="foot-head">Solutions</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
<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/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/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/full-stack/">The Full Stack</a></li>
|
||||||
|
|
||||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Product">
|
<nav class="foot-group" aria-label="Product">
|
||||||
<span class="foot-head">Product</span>
|
<span class="foot-head">Product</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||||
|
|
||||||
<li><a href="../product/software-library/">Software Library</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/agent-sandbox/">Agent Sandbox</a></li>
|
||||||
|
|
||||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||||
|
|
||||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Company">
|
<nav class="foot-group" aria-label="Company">
|
||||||
<span class="foot-head">Company</span>
|
<span class="foot-head">Company</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../about/">About</a></li>
|
<li><a href="../about/">About</a></li>
|
||||||
|
|
||||||
<li><a href="../about/#team">Team</a></li>
|
<li><a href="../about/#team">Team</a></li>
|
||||||
|
|
||||||
<li><a href="../about/#jobs">Jobs</a></li>
|
<li><a href="../about/#jobs">Jobs</a></li>
|
||||||
|
|
||||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Get Started">
|
<nav class="foot-group" aria-label="Get Started">
|
||||||
<span class="foot-head">Get Started</span>
|
<span class="foot-head">Get Started</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../start-now/">Start Now</a></li>
|
<li><a href="../start-now/">Start Now</a></li>
|
||||||
|
|
||||||
<li><a href="../sign-in/">Sign In</a></li>
|
<li><a href="../sign-in/">Sign In</a></li>
|
||||||
|
|
||||||
<li><a href="../pricing/">Pricing</a></li>
|
<li><a href="../pricing/">Pricing</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="foot-legal">
|
<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>
|
<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-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>
|
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
|
|
||||||
(function () {
|
(function () {
|
||||||
var root = document.documentElement;
|
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;
|
if (!('IntersectionObserver' in window)) return;
|
||||||
root.classList.add('js');
|
root.classList.add('js');
|
||||||
|
|
||||||
@@ -792,21 +330,6 @@
|
|||||||
});
|
});
|
||||||
}, { rootMargin: '0px 0px -8% 0px' });
|
}, { rootMargin: '0px 0px -8% 0px' });
|
||||||
document.querySelectorAll('[data-reveal]').forEach(function (el) { io.observe(el); });
|
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">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<title>Terms of Service · Federated Computer</title>
|
<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="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.googleapis.com">
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
<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">
|
<link rel="stylesheet" href="../css/style.css">
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body id="top">
|
<body id="top">
|
||||||
<a class="skip" href="#content">Skip to content</a>
|
<a class="skip" href="#content">Skip to content</a>
|
||||||
<div class="page">
|
|
||||||
|
|
||||||
|
|
||||||
<aside class="rail">
|
<header class="site-head">
|
||||||
<div class="rail-bar">
|
<div class="wrap head-bar">
|
||||||
<a href="../" class="brand" aria-label="Federated Computer, home">
|
<a href="../" class="brand" aria-label="Federated Computer, home">
|
||||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||||
</a>
|
</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">
|
<details class="menu">
|
||||||
<summary><span class="menu-word">Menu</span><span class="menu-glyph" aria-hidden="true"><i></i><i></i></span></summary>
|
<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">
|
<nav class="menu-panel" aria-label="Site">
|
||||||
@@ -60,10 +169,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a href="../start-now/" class="btn btn-primary">
|
<a href="../start-now/" class="btn btn-primary">Start Now<span class="arrow" aria-hidden="true">→</span></a>
|
||||||
<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>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -78,595 +184,20 @@
|
|||||||
</nav>
|
</nav>
|
||||||
</details>
|
</details>
|
||||||
</div>
|
</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">
|
<header class="hero hero-compact">
|
||||||
<h1 class="statement">Terms of Service</h1>
|
<div class="wrap">
|
||||||
<p class="dek">Effective date: April 1, 2026</p>
|
<div class="hero-copy">
|
||||||
|
<h1 class="statement">Terms of Service</h1>
|
||||||
|
<p class="dek">Effective date: April 1, 2026</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<section class="section">
|
<section class="section section-doc">
|
||||||
<div class="prose doc"><h2 id="1-agreement-overview">1. Agreement Overview</h2>
|
<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>
|
<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>
|
<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>
|
<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>
|
<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>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>
|
<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>
|
</section>
|
||||||
|
|
||||||
<footer class="foot" data-reveal>
|
</main>
|
||||||
<div class="foot-brand">
|
<footer class="foot">
|
||||||
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
<div class="wrap">
|
||||||
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
<div class="foot-top-row">
|
||||||
</a>
|
<div class="foot-brand">
|
||||||
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
<a href="../" class="foot-mark" aria-label="Federated Computer, home">
|
||||||
<span class="foot-place">Colorado Springs, Colorado</span>
|
<img src="../images/logo.png" alt="Federated Computer" class="brand-logo" width="775" height="129">
|
||||||
<ul class="foot-social">
|
</a>
|
||||||
<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>
|
<p class="foot-line">The open-source operating system for your business — and the private AI that runs on it.</p>
|
||||||
</ul>
|
<span class="foot-place">Colorado Springs, Colorado</span>
|
||||||
</div>
|
<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">
|
<div class="foot-grid">
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Solutions">
|
<nav class="foot-group" aria-label="Solutions">
|
||||||
<span class="foot-head">Solutions</span>
|
<span class="foot-head">Solutions</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../solutions/open-source-apps/">Open-Source Apps</a></li>
|
<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/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/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/full-stack/">The Full Stack</a></li>
|
||||||
|
|
||||||
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
<li><a href="../solutions/#compare">Compare All Four</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Product">
|
<nav class="foot-group" aria-label="Product">
|
||||||
<span class="foot-head">Product</span>
|
<span class="foot-head">Product</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../product/federated-core/">Federated Core</a></li>
|
<li><a href="../product/federated-core/">Federated Core</a></li>
|
||||||
|
|
||||||
<li><a href="../product/software-library/">Software Library</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/agent-sandbox/">Agent Sandbox</a></li>
|
||||||
|
|
||||||
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
<li><a href="../product/data-controls/">Data & Controls</a></li>
|
||||||
|
|
||||||
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
<li><a href="../ai-privacy-advantage/">AI Privacy Advantage</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Company">
|
<nav class="foot-group" aria-label="Company">
|
||||||
<span class="foot-head">Company</span>
|
<span class="foot-head">Company</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../about/">About</a></li>
|
<li><a href="../about/">About</a></li>
|
||||||
|
|
||||||
<li><a href="../about/#team">Team</a></li>
|
<li><a href="../about/#team">Team</a></li>
|
||||||
|
|
||||||
<li><a href="../about/#jobs">Jobs</a></li>
|
<li><a href="../about/#jobs">Jobs</a></li>
|
||||||
|
|
||||||
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
<li><a href="https://freescout.federated.computer/help/3593186542">Support</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<nav class="foot-group" aria-label="Get Started">
|
<nav class="foot-group" aria-label="Get Started">
|
||||||
<span class="foot-head">Get Started</span>
|
<span class="foot-head">Get Started</span>
|
||||||
<ul class="foot-links">
|
<ul class="foot-links">
|
||||||
|
|
||||||
<li><a href="../start-now/">Start Now</a></li>
|
<li><a href="../start-now/">Start Now</a></li>
|
||||||
|
|
||||||
<li><a href="../sign-in/">Sign In</a></li>
|
<li><a href="../sign-in/">Sign In</a></li>
|
||||||
|
|
||||||
<li><a href="../pricing/">Pricing</a></li>
|
<li><a href="../pricing/">Pricing</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="foot-legal">
|
<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>
|
<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-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>
|
<a class="foot-top" href="#top">Back to top<span class="foot-up" aria-hidden="true">↑</span></a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
|
|
||||||
(function () {
|
(function () {
|
||||||
var root = document.documentElement;
|
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;
|
if (!('IntersectionObserver' in window)) return;
|
||||||
root.classList.add('js');
|
root.classList.add('js');
|
||||||
|
|
||||||
@@ -867,21 +405,6 @@
|
|||||||
});
|
});
|
||||||
}, { rootMargin: '0px 0px -8% 0px' });
|
}, { rootMargin: '0px 0px -8% 0px' });
|
||||||
document.querySelectorAll('[data-reveal]').forEach(function (el) { io.observe(el); });
|
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