From 5deea5664eb3d5d99af33c10aa2a6014d85b4390 Mon Sep 17 00:00:00 2001 From: shdrs Date: Mon, 1 Jun 2026 20:19:37 +0800 Subject: [PATCH 1/3] Disable scroll-snap on landing page --- docs/index.html | 14 +++++++++++--- static/landing.html | 14 +++++++++++--- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/docs/index.html b/docs/index.html index 8c6a21d89..00b37d5a4 100644 --- a/docs/index.html +++ b/docs/index.html @@ -25,9 +25,17 @@ --radius: 8px; } * { box-sizing: border-box; } - html { scroll-behavior: smooth; scroll-snap-type: y mandatory; scroll-padding-top: 60px; } - /* Each section is a full-viewport "page" with its content centered, so only - one shows at a time and the snap is obvious. */ + html { scroll-behavior: smooth; scroll-padding-top: 60px; } + /* REMOVED: "scroll-snap-type: y mandatory" + The idea was: >>Each section is a full-viewport "page" with its content centered, + so only one shows at a time and the snap is obvious.<< + + PROBLEM: sections easily grow taller than 100vh IRL + This cause forced jumps mid-read. It's intrusive UX. + + Preserved: CSS snap-points to avoid destroying code meta-data + Less intrusive version: "scroll-snap-type: y proximity" + For now: fully removed (bad UX)*/ .hero, section { scroll-snap-align: start; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; diff --git a/static/landing.html b/static/landing.html index f98378621..e1f12f7ef 100644 --- a/static/landing.html +++ b/static/landing.html @@ -25,9 +25,17 @@ --radius: 8px; } * { box-sizing: border-box; } - html { scroll-behavior: smooth; scroll-snap-type: y mandatory; scroll-padding-top: 60px; } - /* Each section is a full-viewport "page" with its content centered, so only - one shows at a time and the snap is obvious. */ + html { scroll-behavior: smooth; scroll-padding-top: 60px; } + /* REMOVED: "scroll-snap-type: y mandatory" + The idea was: >>Each section is a full-viewport "page" with its content centered, + so only one shows at a time and the snap is obvious.<< + + PROBLEM: sections easily grow taller than 100vh IRL + This cause forced jumps mid-read. It's intrusive UX. + + Preserved: CSS snap-points to avoid destroying code meta-data + Less intrusive version: "scroll-snap-type: y proximity" + For now: fully removed (bad UX)*/ .hero, section { scroll-snap-align: start; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; From 1ef50279fb7b919cfe3be45b02715698af74fb74 Mon Sep 17 00:00:00 2001 From: shdrs Date: Tue, 9 Jun 2026 09:02:41 +0800 Subject: [PATCH 2/3] Disable scroll-snap on landing page --- static/landing.html | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/static/landing.html b/static/landing.html index e1f12f7ef..05943284c 100644 --- a/static/landing.html +++ b/static/landing.html @@ -26,16 +26,15 @@ } * { box-sizing: border-box; } html { scroll-behavior: smooth; scroll-padding-top: 60px; } - /* REMOVED: "scroll-snap-type: y mandatory" + /* REMOVED: "scroll-snap-type: y proximity" The idea was: >>Each section is a full-viewport "page" with its content centered, so only one shows at a time and the snap is obvious.<< PROBLEM: sections easily grow taller than 100vh IRL This cause forced jumps mid-read. It's intrusive UX. + The landing-page is not a PowerPoint presentation! - Preserved: CSS snap-points to avoid destroying code meta-data - Less intrusive version: "scroll-snap-type: y proximity" - For now: fully removed (bad UX)*/ + Preserved: CSS snap-points to avoid destroying code meta-data*/ .hero, section { scroll-snap-align: start; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; From f34ae6b9650151d16214e9b0a1809288366b7365 Mon Sep 17 00:00:00 2001 From: shdrs Date: Tue, 9 Jun 2026 09:08:54 +0800 Subject: [PATCH 3/3] remove stale static page --- static/landing.html | 746 -------------------------------------------- 1 file changed, 746 deletions(-) delete mode 100644 static/landing.html diff --git a/static/landing.html b/static/landing.html deleted file mode 100644 index 05943284c..000000000 --- a/static/landing.html +++ /dev/null @@ -1,746 +0,0 @@ - - - - - - -Odysseus — A Self-Hosted AI Workspace - - - - - - - - -
-
- -

Yours for the voyage.

-

Your own AI workspace,
running on your hardware.

-

- Odysseus is a self-hosted interface for talking to language models — chat, - autonomous agents, tools, model serving, email, research, and more. Local-first, - privacy-first, and no telemetry. Just you and your models. -

-

- (if you want to add an API that's cool too — I'm not here to tell you how to live your life…) -

- - -
-
- - -
-
-
-
Loved by enterprises
-

What our customers are saying

-
- -
- -
- - -
- Generic Coder Guy -
-

"Odysseus helped us ship more ships while shipping ships. Truly best-in-class shipping."

-
★★★★★
-
Generic Coder Guy
-
Sr. Engineer, ShipShip Inc.
-
-
- - -
- A real woman -
-

"I'm a real person. This is a real testimonial. By a real woman."

-
★★★★★
-
Generic Corporate Woman
-
VP of Verticals, Things LLC
-
-
- - -
- - - - - - - - - - -
-

"AHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"

-
☆☆☆☆☆
-
Polyphemus
-
Cyclops, Cave Solutions (on leave)
-
-
- - -
- - - -
-

"Anyway, as I was saying — best-in-class."

-
★★★★★
-
Chad Corporate
-
Chief Executive Officer
-
-
- -
- -
-
-
-
- - -
-
-
-
Everything, self-hosted
-

One app, a lot of capabilities

-

Started as an AI chat. Became a workspace. Each piece runs locally against - whatever endpoints you point it at.

-
-
-
- -

Chat & Agents

-

Multi-turn chat plus autonomous agents that plan, call tools, and work through tasks.

-
-
- -

Tools & MCP

-

Built-in tools (bash, files, web, memory) plus any MCP server you connect. Toggle per tool.

-
-
- -

Cookbook

-

Hardware-aware model recommendations and one-click serving across 270+ catalogued models.

-
-
- -

Email Assistant

-

AI summaries, style-matched draft replies, auto-tagging and spam triage over IMAP/SMTP.

-
-
- -

Deep Research

-

Multi-step research runs that gather, read, and synthesize sources into a written report.

-
-
- -

Compare

-

Send one prompt to several models at once and compare their answers side-by-side.

-
-
- -

Memory

-

Persistent memory the assistant builds up and recalls across all your conversations.

-
-
- -

Skills self-evolving

-

The assistant writes, refines, and reuses its own skills — getting more capable over time.

-
-
- -

Private by default

-

Runs on your machine against your own endpoints. No telemetry, with optional external integrations when you choose them.

-
-
-
-
- - -
-
-

Odysseus was created by a carefully crafted one-shot AI prompt:

-
-
- user@odysseus: ~ - -
-
> idk what to make can you write it for me?
-  actually make an ai chat, but make it good
-  and also make it better
-
- -
-
- - -
-
-
-
See it in action
-

Hover to take a closer look

-

Each panel expands and plays its preview when you hover it.

-
-
-
-
[ Chat & Agents ]
- -
Chat & Agents
-
-
-
[ Cookbook ]
-
Cookbook
-
-
-
[ Email Assistant ]
- -
Email Assistant
-
-
-
-
- - -
-
-
How it actually started
-

Odysseus is everything I hate, just making it tolerable.

-

- I started working on the Odysseus project because running local AI felt fun — a step into the future. - But the options to actually engage with LLMs felt like taking steps back. Where were - features like Memory, Deep Research, Agents, and just basic integrations?! -

-

- So I started building my own, for fun — and eventually figured it might be fun to - share what I built for myself with others. Doesn't work for you? Well… it runs - great on my hardware. -

-
-
- - -
-
-
-
Get started
-

Clone it and run

-

It's open source and free. No sales team, no demo request — just clone the repo.

-
$ git clone https://github.com/pewdiepie-archdaemon/odysseus.git && cd odysseus
- -
- Self-hosted - Bring your own models - Local-first - MCP-ready - No telemetry -
-
-
-
- -
-
-
© 2026 Odysseus · Built from one prompt that refused to stop.
-
No cyclopes were harmed in production.*
-
-
- - - - -