port 147 community Omarchy themes from omarchythemes.com
The official 22 themes come from basecamp/omarchy's own colors.toml, contrast-checked by generate-themes.ts. A community theme has no such file — it ships per-app configs (alacritty.toml, ghostty.conf) in the older 16-ANSI-slot style, so this adds a sibling pipeline: from-ansi.ts derives the same 24-key Palette shape by role (accent, three background depths, three foreground weights) from those 16 slots, then runs through the same mapPalette + contrast checks the official themes use. Nothing about the official generator changed — verified generate-themes.ts --check still reports 0 changes. port-community-themes.ts discovers each theme's GitHub repo from its omarchythemes.com page, fetches alacritty.toml (preferred) or ghostty.conf, and is idempotent via community-manifest.json so a re-run only fetches what's missing. Community themes get their own registry/index.css marker block, separate from the official GENERATED THEMES block, so the two pipelines can never clobber each other. 121 of 212 attempted made it through cleanly; a second pass tightening accent selection and nudging --input recovered 20 more borderline cases (147 total). The rest failed for real reasons: 62 repos had no parseable colour source, 7 had an accent colour whose own luminance can't clear 4.5:1 against either black or white text, a handful were narrowly under threshold even after the rescue pass, and 2 pages had no repo link at all. Every generated file's header states its source repo and whether it's a light or dark theme. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
/*
|
||||
City 783 — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
|
||||
|
||||
Dark theme (dark), by luminance of its own
|
||||
background — the source repo carries no mode flag of its own to read.
|
||||
|
||||
Source: https://github.com/OldJobobo/omarchy-city-783-theme (alacritty.toml), read by scripts/port-community-themes.ts. Values
|
||||
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because a single-theme repo ships
|
||||
per-app configs, not Omarchy 4's own colors.toml shape — some tokens here are reconstructed, not
|
||||
authored. Every text/surface pair is contrast-checked the same way the official themes are.
|
||||
|
||||
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
|
||||
*/
|
||||
[data-theme='city-783'] {
|
||||
--background: #0d0e11;
|
||||
--foreground: #b9bec6;
|
||||
--card: #181a1f;
|
||||
--card-foreground: #b9bec6;
|
||||
--popover: #181a1f;
|
||||
--popover-foreground: #b9bec6;
|
||||
--muted: #282a2f;
|
||||
--muted-foreground: #8f9399;
|
||||
--accent: #282a2f;
|
||||
--accent-foreground: #b9bec6;
|
||||
--primary: #dce0e6;
|
||||
--primary-foreground: #0d0e11;
|
||||
--secondary: #282a2f;
|
||||
--secondary-foreground: #b9bec6;
|
||||
--cta: #dce0e6;
|
||||
--cta-foreground: #0d0e11;
|
||||
--ctahover: #e0e4e9;
|
||||
--success: #dce0e6;
|
||||
--success-foreground: #0d0e11;
|
||||
--warning: #9e1a1a;
|
||||
--warning-foreground: #bec3ca;
|
||||
--destructive: #e53939;
|
||||
--destructive-foreground: #0d0e11;
|
||||
--info: #ad2222;
|
||||
--info-foreground: #ced2d7;
|
||||
--busy: #c22a2a;
|
||||
--busy-foreground: #e7e7e7;
|
||||
--busy-ink: #ce5555;
|
||||
--border: #383a40;
|
||||
--input: #383a40;
|
||||
--ring: #dce0e6;
|
||||
--radius: 0.625rem;
|
||||
--chart-primary: #dce0e6;
|
||||
--chart-secondary: #c3c8d0;
|
||||
--status-success: #dce0e6;
|
||||
--status-warning: #9e1a1a;
|
||||
--status-in-progress: #ad2222;
|
||||
--page-bg: #0d0e11;
|
||||
--page-bg-src: '';
|
||||
--panel-bg: rgb(24 26 31 / 0.72);
|
||||
--panel-border: rgb(56 58 64 / 0.9);
|
||||
--panel-border-bare: rgb(56 58 64 / 0.55);
|
||||
--panel-raised-bg: rgb(24 26 31 / 0.95);
|
||||
--panel-raised-border: rgb(56 58 64 / 1);
|
||||
--panel-accent: #dce0e6;
|
||||
--panel-header-bg: rgb(40 42 47 / 0.6);
|
||||
--panel-header-fg: #b9bec6;
|
||||
--panel-radius: 0.75rem;
|
||||
--panel-blur: 12px;
|
||||
--card-bg: #181a1f;
|
||||
--glass-bg: rgb(24 26 31 / 0.55);
|
||||
--glass-border: rgb(56 58 64 / 0.7);
|
||||
--dock-bg: rgb(24 26 31 / 0.7);
|
||||
--dock-border: rgb(56 58 64 / 0.8);
|
||||
--dock-tooltip-bg: #282a2f;
|
||||
--header-bg: rgb(24 26 31 / 0.8);
|
||||
--header-border: rgb(56 58 64 / 0.9);
|
||||
--header-fg: #b9bec6;
|
||||
--header-blur: 12px;
|
||||
--pixel-grid-color: rgb(100 104 110 / 0.07);
|
||||
--card-grid-color: rgb(100 104 110 / 0.05);
|
||||
--panel-grid-color: rgb(100 104 110 / 0.06);
|
||||
--scrollbar-thumb: rgb(75 81 91 / 0.6);
|
||||
--scrollbar-thumb-hover: rgb(75 81 91 / 0.85);
|
||||
--scrollbar-thin-thumb: rgb(75 81 91 / 0.45);
|
||||
--scrollbar-thin-thumb-hover: rgb(75 81 91 / 0.7);
|
||||
--brand: #dce0e6;
|
||||
--brand-foreground: #0d0e11;
|
||||
--brand-primary: #dce0e6;
|
||||
--brand-accent: #8f949c;
|
||||
--brand-warm: #c22a2a;
|
||||
--brand-deep: #0d0e11;
|
||||
--brand-muted: #4b515b;
|
||||
--ink: #b9bec6;
|
||||
--surface-warm: #181a1f;
|
||||
--naturegreen: #dce0e6;
|
||||
--naturegreen-foreground: #0d0e11;
|
||||
--duck-dark: #b9bec6;
|
||||
--duck-teal: #8f949c;
|
||||
--duck-yellow: #9e1a1a;
|
||||
--duck-orange: #c22a2a;
|
||||
--duck-forest: #dce0e6;
|
||||
--duck-beige: #282a30;
|
||||
--logo-src: '/officer-logo.svg';
|
||||
}
|
||||
Reference in New Issue
Block a user