test / unit + widget + golden + a11y (push) Failing after 39s
test / integration_test (xvfb) (push) Has been skipped
test / bundle smoke (xvfb 5s) (push) Has been skipped
test / daemon subprocess + web WASM smoke (push) Has been skipped
SurfaceTokens gains seven syntax-role fields (keyword, type, string, number, comment, method, punct). Theme loader parses the syntax: YAML block and injects values into the surface override layer. Resolver defaults map syntax roles to semantic colours so themes without explicit syntax blocks still compile. Four new theme YAMLs (clide, midnight, paper, terminal) replace summer-night. Palette keys mapped to the existing semantic layer; syntax values pass through directly. Goldens regenerated for the 14→font-size change. Co-Authored-By: Claude <noreply@anthropic.com>
107 lines
3.6 KiB
YAML
107 lines
3.6 KiB
YAML
# clide_app — Flutter desktop UI.
|
|
#
|
|
# Renders clide's IDE surfaces; depends on the root `clide` Dart core
|
|
# package (shared with the CLI + daemon). Prefer-zero-deps; every
|
|
# third-party entry below is exact-pinned and justified. No carets.
|
|
|
|
name: clide_app
|
|
description: >-
|
|
Flutter desktop IDE for Claude Code — renders the UI. Talks to the
|
|
Dart core (CLI + daemon) via IPC; all PTY/subprocess/filesystem work
|
|
lives in the daemon (D-005).
|
|
publish_to: none
|
|
version: 2.0.0-dev
|
|
repository: https://git.schweitz.net/jpmschweitzer/clide
|
|
|
|
environment:
|
|
sdk: ">=3.5.0 <4.0.0"
|
|
flutter: ">=3.19.0"
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
|
|
# Dart core — shared types, IPC protocol, anything CLI + daemon + app
|
|
# all import. Kept Flutter-free so `dart compile exe` produces a lean
|
|
# static binary (see D-005).
|
|
clide:
|
|
path: ../
|
|
|
|
# YAML — the one justified exception to prefer-zero-deps. Dart-team
|
|
# maintained, used for theme files and extension manifests.
|
|
yaml: 3.1.3
|
|
|
|
# xterm.dart — Flutter-native terminal emulator (ANSI / xterm / truecolor
|
|
# parser + renderer). Writing a vt100/ANSI parser that handles everything
|
|
# tmux / neovim / claude emit would be weeks of work for no fidelity
|
|
# win. Listed in licenses.yaml per D-042. MIT.
|
|
xterm: 4.0.0
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
flutter_lints: 6.0.0
|
|
|
|
# Integration tests for the real-app startup-regression gate.
|
|
integration_test:
|
|
sdk: flutter
|
|
|
|
# Mocks at IO/IPC boundaries; hand-rolled fakes for ChangeNotifiers.
|
|
mocktail: 1.0.4
|
|
|
|
# Golden-test framework (Ahem font, cross-platform pixel stability).
|
|
# Used only for widget primitives, not compositions.
|
|
alchemist: 0.12.1
|
|
|
|
flutter:
|
|
uses-material-design: false
|
|
|
|
assets:
|
|
- lib/kernel/src/theme/themes/
|
|
- lib/kernel/src/i18n/catalog/
|
|
# Licensing — read by the About screen. `licenses.yaml` is the
|
|
# manifest (self + runtime deps + dev deps); each `license_file`
|
|
# pointer must also be a bundled asset so the About screen can
|
|
# display each dependency's full license text at runtime.
|
|
# Root LICENSE is mirrored into assets/LICENSE for the same reason
|
|
# (root paths can't be referenced from a Flutter package's assets).
|
|
# See CLAUDE.md "Dependencies & supply chain" and D-042.
|
|
- assets/licenses.yaml
|
|
- assets/LICENSE
|
|
- assets/fonts/jetbrains_mono/OFL.txt
|
|
- assets/fonts/josefin_sans/OFL.txt
|
|
- assets/logo/clide-logo.svg
|
|
- assets/logo/clide-logo-16.png
|
|
- assets/logo/clide-logo-32.png
|
|
- assets/logo/clide-logo-48.png
|
|
- assets/logo/clide-logo-192.png
|
|
- assets/logo/clide-logo-256.png
|
|
- assets/logo/clide-logo-512.png
|
|
- assets/logo/clide-logo-1024.png
|
|
|
|
# Bundled fonts. OFL-licensed; license files live alongside each.
|
|
#
|
|
# JosefinSans — UI default. Variable font covers weights 100-700
|
|
# plus an italic axis companion; we default to Light (300) per the
|
|
# project's aesthetic direction.
|
|
#
|
|
# JetBrainsMono — terminal / code surfaces. Static weights keep
|
|
# rendering predictable across xterm.dart, goldens, and CI.
|
|
fonts:
|
|
- family: JosefinSans
|
|
fonts:
|
|
- asset: assets/fonts/josefin_sans/JosefinSans-VariableFont.ttf
|
|
- asset: assets/fonts/josefin_sans/JosefinSans-Italic-VariableFont.ttf
|
|
style: italic
|
|
|
|
- family: JetBrainsMono
|
|
fonts:
|
|
- asset: assets/fonts/jetbrains_mono/JetBrainsMono-Regular.ttf
|
|
- asset: assets/fonts/jetbrains_mono/JetBrainsMono-Italic.ttf
|
|
style: italic
|
|
- asset: assets/fonts/jetbrains_mono/JetBrainsMono-Bold.ttf
|
|
weight: 700
|
|
- asset: assets/fonts/jetbrains_mono/JetBrainsMono-BoldItalic.ttf
|
|
weight: 700
|
|
style: italic
|