Files
commitea/apps/desktop/tailwind.config.js
Christian LeDoux 7a5cacc54c Scaffold CommiTea: yarn workspaces, Electron shell, core label schema, design system
- apps/desktop: electron-vite + React + Tailwind mapped onto design tokens
  (preflight off; tokens/base.css owns the reset); boots to a Reginald
  placeholder proving fonts/tokens/core wiring
- packages/core: pure TS; gitea label schema (est/*, p/*, deadline/hard)
  with pessimistic conflict resolution + 15 unit tests
- docs/design: full design handoff (tokens, 16 component contracts,
  interactive 14-screen prototype, Reginald voice rules)
- docs/PLAN.md: product plan (purity rule, pm-state repo, deterministic
  scheduler + Monte Carlo, directive log)
- Deliberate deviation from novelpad stack: no ElectricSQL/PGlite — local
  store is a rebuildable cache over gitea REST/webhooks (better-sqlite3
  in main process, arriving in P1)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 20:42:46 -04:00

68 lines
2.0 KiB
JavaScript

/**
* Tailwind maps onto the design-token custom properties (src/renderer/src/design/tokens/)
* and never redefines their values. Preflight is off — tokens/base.css owns the reset.
* @type {import('tailwindcss').Config}
*/
export default {
content: ['./src/renderer/index.html', './src/renderer/src/**/*.{ts,tsx}'],
corePlugins: { preflight: false },
theme: {
extend: {
colors: {
paper: {
0: 'var(--paper-0)',
1: 'var(--paper-1)',
2: 'var(--paper-2)',
3: 'var(--paper-3)',
},
ink: {
1: 'var(--ink-1)',
2: 'var(--ink-2)',
3: 'var(--ink-3)',
inverse: 'var(--ink-inverse)',
},
line: {
1: 'var(--line-1)',
2: 'var(--line-2)',
},
accent: {
DEFAULT: 'var(--accent)',
hover: 'var(--accent-hover)',
pressed: 'var(--accent-pressed)',
tint: 'var(--accent-tint)',
text: 'var(--accent-text)',
},
jade: {
DEFAULT: 'var(--jade)',
tint: 'var(--jade-tint)',
},
ok: { DEFAULT: 'var(--ok)', tint: 'var(--ok-tint)' },
warn: { DEFAULT: 'var(--warn)', tint: 'var(--warn-tint)' },
danger: { DEFAULT: 'var(--danger)', tint: 'var(--danger-tint)' },
info: { DEFAULT: 'var(--info)', tint: 'var(--info-tint)' },
},
fontFamily: {
display: ['Libre Caslon Display', 'serif'],
agent: ['Libre Caslon Text', 'serif'],
sans: ['Instrument Sans', 'system-ui', 'sans-serif'],
mono: ['IBM Plex Mono', 'ui-monospace', 'monospace'],
},
borderRadius: {
1: 'var(--radius-1)',
2: 'var(--radius-2)',
3: 'var(--radius-3)',
},
boxShadow: {
1: 'var(--shadow-1)',
2: 'var(--shadow-2)',
3: 'var(--shadow-3)',
'jade-line': 'var(--shadow-jade-line)',
},
transitionTimingFunction: {
out: 'var(--ease-out)',
},
},
},
plugins: [],
}