Echo6 Landing Page — Data Export
Echo6 Platform Reference — Infrastructure, Services & Brand Identity
1. Brand / Identity
- Domain: echo6.co
- Admin email: admin@echo6.co
- Auth provider: Authentik (auth.echo6.co) — OIDC SSO across all services
Brand Colors (extracted from logo)
| Color |
Hex |
RGB |
Usage |
| Echo6 Cyan |
#28C0E8 |
rgb(40, 192, 232) |
Primary accent, buttons, links, focus states |
| Echo6 Cyan Light |
#5DD4F5 |
rgb(93, 212, 245) |
Hover states |
| Echo6 Yellow |
#F0D848 |
rgb(240, 216, 72) |
Secondary accent, warnings |
| Background Primary |
#0a0e17 |
rgb(10, 14, 23) |
Page backgrounds |
| Background Secondary |
#111827 |
rgb(17, 24, 39) |
Cards, sidebars, inputs |
| Background Tertiary |
#1a2332 |
rgb(26, 35, 50) |
Hover states |
| Border |
#1e3a5f |
rgb(30, 58, 95) |
All borders |
| Text Primary |
#e0e6ed |
rgb(224, 230, 237) |
Main text |
| Text Muted |
#7a8ca0 |
rgb(122, 140, 160) |
Secondary text |
Design Language
- Aesthetic: Cyberpunk — dark, sharp, clean. No excessive glow or neon blur.
- Font: JetBrains Mono (monospace) throughout all Echo6-branded interfaces
- Text: All lowercase in navigation, menus, and footer elements
- Effects: Subtle — search bar focus shadow at 0.12 opacity max, no colored glows
2. Public-Facing Services
3. Echo6 Homepage — SearXNG Custom Theme
Overview
The Echo6 homepage at echo6.co is a customized SearXNG instance (not a standalone static page). The default SearXNG UI is reskinned via CSS overlay, template overrides, and settings.yml changes to match the Echo6 cyberpunk brand.
Implementation Approach
- CSS overlay (
echo6-custom.css) — all color, font, layout, and component overrides
- Logo replacement — Echo6 logo replaces SearXNG default logo via volume mount or direct file copy
- Template override (
base.html) — injects the top navigation bar, waffle menu JS, and custom footer
- settings.yml — instance name, theme, base URL configuration
SearXNG Settings
general:
instance_name: "Echo6"
ui:
default_theme: simple
center_alignment: false # results stretch to fill viewport
theme_args:
simple_style: dark
server:
base_url: "https://echo6.co/"
brand:
issue_url: false
docs_url: false
public_instances: false
wiki_url: false
Homepage Layout (Google.com-inspired)
┌─────────────────────────────────────────────────────────┐
│ .//photos .//mail [⠿] [👤] │ ← top nav (right-aligned)
│ │
│ [ECHO6 LOGO] │ ← centered ~35-40% from top
│ │
│ ┌─────────────────────┐ │
│ │ 🔍 search input │ │ ← pill search bar
│ └─────────────────────┘ │
│ │
├─────────────────────────────────────────────────────────┤
│ echo6.co │
│ preferences · about │ ← footer (minimal)
└─────────────────────────────────────────────────────────┘
- Homepage locked to viewport (no scroll,
overflow: hidden on body.index)
- Logo + search bar vertically centered at ~35-40% from top using flexbox
- Default SearXNG text/wordmark hidden via CSS
- Results pages scroll normally (only homepage is viewport-locked)
Top Navigation
| Element |
Style |
Target |
| .//photos |
Cyan monospace link |
https://auth.echo6.co/application/launch/<immich-slug>/ |
| .//mail |
Cyan monospace link |
https://auth.echo6.co/application/launch/<mailcow-slug>/ |
| ⠿ (waffle) |
Circle button, 36px |
Opens waffle menu dropdown |
| 👤 (login) |
Circle button, 32px, border |
https://auth.echo6.co/ |
Waffle Menu (11 items, 3-column grid)
| Label |
Target |
| aurora |
https://auth.echo6.co/application/launch/<openwebui-slug>/ |
| stream |
https://auth.echo6.co/application/launch/<peertube-slug>/ |
| files |
https://files.echo6.co (public — no launch URL) |
| watchtower |
https://auth.echo6.co/application/launch/<watchtower-slug>/ |
| photos |
https://auth.echo6.co/application/launch/<immich-slug>/ |
| mail |
https://auth.echo6.co/application/launch/<mailcow-slug>/ |
| cloud |
https://auth.echo6.co/application/launch/<nextcloud-slug>/ |
| jellyfin |
https://auth.echo6.co/application/launch/<jellyfin-slug>/ |
| requests |
https://auth.echo6.co/application/launch/<jellyseerr-slug>/ |
| admin |
https://auth.echo6.co/ |
| preferences |
https://echo6.co/preferences |
All authenticated service links use Authentik launch URLs (/application/launch/<slug>/) for seamless SSO pass-through.
CSS Architecture (14 sections)
- CSS variables (brand colors)
- Homepage viewport lock + centering
- SearXNG wordmark hiding
- Logo sizing
- Search bar (pill shape, cyan focus)
- Search buttons
- Top navigation bar (fixed, right-aligned)
- Waffle menu dropdown (grid, fade-in animation)
- Footer (minimal, lowercase)
- Search results page (stretched full-width, themed)
- Preferences page (dark forms, cyan accents)
- Scrollbar styling
- Selection highlight
- Responsive breakpoints (768px, 480px)
SearXNG File Locations
| Asset |
Path |
| Logo |
/usr/local/searxng/searx/static/themes/simple/img/searxng.png |
| Favicon |
/usr/local/searxng/searx/static/themes/simple/img/favicon.png |
| Custom CSS |
Injected via template override or volume mount |
| Base template |
/usr/local/searxng/searx/templates/simple/base.html |
| Settings |
/etc/searxng/settings.yml |
4. Authentik Theme — Echo6 Branding
Overview
The Authentik instance at auth.echo6.co is themed to match the Echo6 cyberpunk aesthetic. This covers the login flow, user dashboard, and admin interface.
Brand Settings (Admin → System → Brands)
| Setting |
Value |
| Branding title |
echo6 |
| Logo |
Echo6 logo (uploaded via Customization → Files) |
| Favicon |
Echo6 favicon |
| Theme |
dark (forced — not automatic) |
| Custom CSS |
Echo6 Authentik CSS (see below) |
Flow Text Customization
| Flow |
Title |
| Authentication |
echo6 // login |
| Invalidation |
echo6 // logout |
| Recovery |
echo6 // recovery |
| User settings |
echo6 // settings |
User Dashboard Layout
settings:
theme:
base: dark
cardLayout: 3-column
CSS Customization Scope
The Authentik CSS overrides PatternFly (pf-c-*) components:
- Login flow: dark gradient background, cyan buttons, JetBrains Mono font
- Form inputs: dark backgrounds (
#111827), cyan focus borders
- User dashboard: dark app cards with cyan hover borders
- Admin interface: dark sidebar, cyan active nav indicators
- Buttons: primary = Echo6 cyan with dark text, secondary = border-only
- Tables, tabs, modals, alerts, dropdowns — all themed
- Global font override to JetBrains Mono
Application Icons
Each Authentik application has a matching service icon uploaded for the user dashboard tiles. Icons sourced from official project assets or cyberpunk-styled variants.
Version Note
Authentik 2025.12.4 — custom CSS is applied via the Brand CSS field in System → Brands → Edit. The Shadow DOM CSS injection bug from 2025.12.0 is fixed in this version. Logo/favicon use the Files system (Customization → Files) rather than the old /media/ mount path.
5. Infrastructure Overview
Nodes (all connected via Tailscale / self-hosted Headscale)
| Node |
Role |
Key Services |
| data |
Proxmox host |
Hosts RECON LXC (CT 130) |
| utility |
Proxmox host |
Caddy reverse proxy (CT 101), TLS termination |
| cloud |
Proxmox host |
— |
| media |
Proxmox host |
PeerTube LXC (CT 110) |
| toc |
Proxmox host |
GPU passthrough host for cortex VM |
| cortex |
VM on toc |
RTX A4000 16GB, Qdrant, Ollama, TEI, OpenWebUI, PeerTube runner |
| pi-nas |
NFS storage (OMV) |
18TB — PDF library + PeerTube video storage |
| Contabo VPS |
Remote |
WATCHTOWER, DNS, automated backups (919GB available) |
GPU — NVIDIA RTX A4000 (16GB VRAM, on cortex)
| Workload |
VRAM |
Silicon |
| TEI embeddings (bge-m3) |
1.3 GB |
CUDA |
| Aurora LLM (JOSIEFIED Qwen3 8B) |
~5 GB |
CUDA/Tensor |
| Whisper transcription (medium) |
~5 GB |
CUDA (short videos) or CPU (long videos) |
| NVENC video encoding |
~0.2-0.5 GB/stream |
Dedicated ASIC (no CUDA contention) |
| Typical total |
~11.5 GB / 16 GB |
|
What It Does
Processes PDFs and web content → extracts structured knowledge concepts via Gemini AI → embeds into a vector database → provides RAG-augmented retrieval for Aurora.
Pipeline Flow
PDF/Web Source → Extract Text → Gemini Enrichment → JSON (saved) → Embed (TEI) → Qdrant
Key Stats
| Metric |
Value |
| Total documents catalogued |
~13,239 PDFs + web sources |
| Documents complete |
~1,200+ (and growing) |
| Vectors in Qdrant |
95,000+ |
| Embedding throughput |
1,711 embeddings/sec (TEI) |
| Enrichment rate |
~100 docs/hour |
| Search latency |
<10ms (HNSW index) |
| Full catalogue reprocess time |
~50 hours |
| Full catalogue cost |
~$135 (Gemini API) |
Content Sources
| Source |
Count |
Description |
| Army Field Manuals |
~160 |
Official Army doctrine (FM series) |
| Survival Companion Library |
~6,600 |
Comprehensive survival/preparedness collection |
| Other documents |
~6,300 |
Assorted reference, technical, trades |
| meshtastic.org |
~247 pages |
Mesh communications documentation |
| ready.gov |
~5 pages |
Emergency preparedness |
Knowledge Domains (Aurora Taxonomy)
| Tier |
Domain |
Examples |
| 1 |
Foundational Skills |
Water, food, fire, shelter, first aid, navigation, security |
| 2 |
Sustainment Systems |
Long-term food/water/energy, medical stockpiling, tool maintenance |
| 3 |
Defense & Military Tactics |
Perimeter defense, small unit tactics, weapons, OPSEC |
| 4 |
Off-Grid Systems |
Power generation, water independence, thermal, comms infrastructure |
| 5 |
Communications & Intelligence |
Radio ops, mesh networking, SIGINT, OSINT, backup comms |
| 6 |
Scenario Playbooks |
Urban collapse, rural homesteading, bug-out, governance |
Scenario Timescales
| Tag |
Scope |
| tuesday_prepper |
Next-week disruption (power outage, storm) |
| month_prepper |
Extended disruption (supply chain, regional disaster) |
| year_prepper |
Long-term grid-down |
| multi_year |
Sustained collapse |
| eotwawki |
End of the world as we know it |
Concept Schema (22 fields per concept)
Core content, classification (domain/subdomain/skill level/scenario), provenance (source type, credibility score, verification status), reference (chapter, page, key facts), and technical metadata (deterministic IDs, embeddings, download URLs).
Pipeline Architecture
| Stage |
Workers |
Bottleneck |
Description |
| Extract |
4 |
CPU-bound |
PyPDF2 → pdftotext → Tesseract → Gemini Vision (4-method fallback chain) |
| Enrich |
16 |
I/O-bound (Gemini API) |
10-page windows → Gemini 2.0 Flash → structured JSON concepts |
| Embed |
batch |
I/O-bound (TEI) |
bge-m3 1024-dim → Qdrant insert, 128/batch |
| Scanner |
1 |
Hourly cron |
Auto-discovers new PDFs from NFS mount |
Resilience Features
- JSON-first: all Gemini extractions saved to disk before any DB insert
- Idempotent: content hashing prevents duplicate processing
- Recoverable: full Qdrant rebuild from JSON files alone
- Exponential backoff with jitter for API rate limits
- Window-level failure tolerance (partial document processing)
- Error classification (transient vs permanent)
- Automated backup to Contabo VPS every 6 hours
7. Aurora — AI Assistant
| Property |
Value |
| Interface |
OpenWebUI at ai.echo6.co |
| Model |
JOSIEFIED Qwen3 8B (~55 tok/s, ~5GB VRAM) |
| RAG source |
RECON Qdrant (95K+ vectors, top-5 retrieval) |
| Embedding model |
bge-m3 (1024-dim via TEI) |
| Score threshold |
0.3 cosine similarity |
| Citations |
Clickable badges linking to files.echo6.co PDFs or source web pages |
| Dual-mode |
Think Toggle filter for reasoning vs. fast response |
| Auth |
Authentik OIDC |
8. PeerTube — Video Platform
Instance Details
| Property |
Value |
| URL |
https://stream.echo6.co |
| Version |
PeerTube v8.0.2 |
| Installation |
Native (not Docker), Debian 12 |
| Host |
CT 110 on media node |
| Storage |
NFS from pi-nas (~18TB capacity) |
| Database |
PostgreSQL (peertube_prod) |
| Auth |
Authentik OIDC (signup disabled) |
| Transcoding |
720p + 1080p HLS only, NVENC GPU via remote runner |
| Transcription |
Whisper medium (GPU for <1hr, CPU for >1hr) |
Channel Library
| Category |
Examples |
| Tactical/Firearms |
Forgotten Weapons, Active Self Protection, Garand Thumb |
| Preparedness/Homesteading |
Canadian Prepper, City Prepping |
| Trades — Electrical |
— |
| Trades — Plumbing |
— |
| Trades — HVAC |
— |
| Trades — Welding |
— |
| Trades — Automotive |
— |
| Trades — Woodworking |
— |
| Ham Radio |
Dave Casler, Ham Radio Crash Course, DX Commander |
| Comms/Meshtastic |
Andreas Spiess, The Comms Channel, CommsPrepper |
| Education — Math |
— |
| Education — Science |
— |
| Education — Engineering |
— |
| Education — History |
— |
| Medical/Fieldcraft |
PrepMedic, Skinny Medic |
| Lockpicking/Security |
LockPickingLawyer, Bosnianbill |
Key Stats
| Metric |
Value |
| Total channels |
99 curated YouTube channels |
| Channels fully synced |
57 of 99 |
| Estimated total library size |
~15.3 TB |
| Transcoding output |
720p + 1080p HLS |
| Transcoder throughput |
~67 videos/hr (NVENC) |
| Transcode win rate |
83% (post-probe-gate optimization) |
| Import method |
Resumable chunked upload (10MB chunks) |
Bulk Import Pipeline
Downloader (CT 110, yt-dlp + VPN rotation)
→ Transcoder (cortex, NVENC GPU, 4 workers)
→ Importer (CT 110, PeerTube API, resumable upload)
- Round-robin across 99 channels with sliding window (50 videos/batch)
- VPN rotation on rate limit (NordVPN, 6 countries: US, CA, UK, DE, NL, SE)
- Pre-encode probe gate skips already-efficient codecs (H.265/AV1/VP9) and low-bitrate H.264
- Automatic dedup via download archive
- All three stages run as systemd services
9. Networking & Security
| Layer |
Technology |
| Mesh VPN |
Tailscale (self-hosted Headscale) |
| Reverse proxy |
Caddy (CT 101 on utility) — auto TLS |
| DNS |
GoDaddy (external), dnsmasq split DNS (internal) |
| Authentication |
Authentik OIDC SSO across all services |
| SSO Launch URLs |
https://auth.echo6.co/application/launch/<slug>/ for seamless pass-through |
| Backup transport |
rsync over SSH (ed25519 keys) |
10. System Relationships
RECON → Knowledge extraction & vector storage
Aurora → LLM assistant, queries RECON for knowledge (RAG)
ARGUS → Intelligence/OSINT platform, feeds intel into RECON
PeerTube → Video library (curated educational/preparedness content)
WATCHTOWER → Unified infrastructure monitoring
echo6.co → SearXNG search homepage (branded, cyberpunk theme)
auth.echo6.co → Authentik SSO (themed to match Echo6 brand)
files.echo6.co → Document/PDF download server
11. Technology Stack Summary
| Layer |
Technologies |
| Virtualization |
Proxmox (5 nodes) |
| Networking |
Tailscale/Headscale, Caddy, nginx, dnsmasq |
| GPU compute |
NVIDIA RTX A4000 (CUDA, NVENC, Tensor) |
| AI/ML |
Gemini 2.0 Flash, Ollama, TEI (bge-m3), JOSIEFIED Qwen3 8B |
| Vector DB |
Qdrant (HNSW index, cosine similarity) |
| Databases |
SQLite (RECON), PostgreSQL (PeerTube) |
| Video |
PeerTube v8, yt-dlp, ffmpeg/NVENC, Whisper |
| Search |
SearXNG (custom Echo6 theme) |
| Auth |
Authentik (OIDC, custom Echo6 theme) |
| Storage |
NFS (pi-nas, 18TB), Contabo VPS (919GB backup) |
| Languages |
Python (RECON pipeline), Node.js (PeerTube), Bash |
| OS |
Ubuntu 24.04 (RECON), Debian 12 (PeerTube) |
12. Design / Copy Hooks for Landing Page
Tagline Ideas (raw material)
- 13,000+ documents processed into searchable knowledge
- 99 curated educational channels, GPU-transcoded and self-hosted
- AI-powered knowledge retrieval across military doctrine, survival, trades, and communications
- Fully self-hosted, zero cloud dependency for core services
- From PDF to actionable knowledge in 50 hours
Key Differentiators
- Self-hosted everything: LLM, video, auth, DNS, monitoring — no SaaS dependencies
- Knowledge pipeline: Not just storing PDFs — extracting, structuring, and making them searchable via AI
- GPU-accelerated: Single RTX A4000 powers video transcoding, AI inference, embeddings, and transcription simultaneously (different silicon paths)
- Resilient by design: JSON-first storage, automated backups, full rebuild capability, exponential backoff
- Curated content: 99 hand-picked channels across tactical, trades, comms, medical, and education
- Cohesive brand: Cyberpunk aesthetic applied consistently across search, auth, and all services
Numbers That Pop
- 95,000+ knowledge vectors
- 13,239 documents
- 99 video channels
- 1,711 embeddings/second
- <10ms search latency
- 22-field concept schema
- 6 knowledge domains
- 5 Proxmox nodes
- 18TB storage
- ~15.3TB video library
- 11 services in the waffle menu