s0wlz (Matthias Puchstein) 1198ae8afd chore: add release automation
2025-12-31 05:07:22 +01:00
2025-12-31 05:07:22 +01:00
2025-12-31 04:47:09 +01:00
2025-12-31 05:07:22 +01:00

Apex Theme System

"State over Decoration."

Apex is a semantic theme system designed for high-performance focus and clinical clarity. It moves away from purely aesthetic color choices, treating color as a functional tool to communicate system state, urgency, and user intent.

The system consists of two primary canvases:

  • Apex Neon: A high-contrast dark theme for low-light focus.
  • Apex Aeon: A clinical, high-clarity light theme for daylight precision.

Supported Platforms

The factory currently generates native themes for:

  • Neovim (Lua)
  • Zed (JSON extension)
  • Alacritty (TOML)
  • Kitty (Conf)
  • Zsh (Theme with Radar/AAR)
  • Gemini CLI (JSON)
  • GTK4 / Libadwaita (CSS)
  • Hyprland (Conf)
  • Fuzzel (INI)
  • Waybar (CSS variables)
  • Zathura (Config)
  • Btop (Theme)
  • SwayNC (CSS)

The Apex DNA

Apex is built on a unified semantic discipline where every color has a specific role:

  • Red is the Predator: Reserved for active intent, the cursor, current location, and critical errors. It signals "Live Fire."
  • Cyan is Informational: Used for technical data, links, and neutral highlights.
  • Purple is Sacred: Reserved for root access, special modes, or exceptional system states.
  • Contrast is King: Non-negotiable rules for readability (e.g., Black text on Red backgrounds).

Development & Building

This project uses a custom build engine written in Python with Jinja2 templates.

Prerequisites

  • uv (Recommended for dependency management)
  • Python 3.12+

Build

To regenerate all theme files from the source DNA (src/*.yaml):

uv run build.py

Artifacts are output to the dist/ directory, organized by application.

Releases

Per-app releases are automated via scripts/release.sh. The script only bumps app versions when relevant files changed since the last <app>-vX.Y.Z tag, then rebuilds, creates per-app tarballs, and publishes Gitea releases.

Example:

./scripts/release.sh 1.0.2 --notes-dir release-notes

Notes:

  • Use release-notes/<app>.md or release-notes/common.md for release notes.
  • Requires a working tea login and push access to the repo.

Project Structure

  • src/: Source YAML definitions containing the "DNA" of the themes.
  • templates/: Jinja2 templates for each supported application.
  • dist/: Compiled theme files ready for deployment.
  • GEMINI.md: AI Context & Source of Truth.
  • apex-neon.md / apex-aeon.md: Detailed specifications.

Authors

  • S0wlz (Owlibou)
Description
An apex theme fitting for owls.
Readme 1.5 MiB
2025-12-31 06:17:57 +01:00
Languages
Jinja 85.6%
Shell 5.7%
Lua 4.7%
Python 4%