4f84d2d7e2
Internal SmartGift build of a Claude Code monitoring dashboard. Lanes: a durable unit of parallel agent work, one per working directory, tracked across session restarts. Managed lanes are git worktrees the dashboard provisions and can reset or remove behind a three-check destroy guard and a counted preflight; adopted lanes are directories you already own and are never destroyable. Pipelines: a lane moves through pipeline stages. A stage the agent declares with evidence renders green; a stage inferred from the tool-event stream renders dashed amber and never counts as done. Detection is forward-only within a 30-minute window, and never writes the declared stage. Workspace: one page at /run with a lane grid, the selected lane's pipeline, and a full Claude console behind a disclosure.
54 lines
1.4 KiB
JavaScript
54 lines
1.4 KiB
JavaScript
/**
|
|
* @file tailwind.config.js
|
|
* @description Tailwind CSS configuration — content globs and the dashboard's dark-theme design tokens.
|
|
* @author Nguyễn Ngọc Trí Vĩ <vinnt@smartgift.vn>
|
|
*/
|
|
|
|
/** @type {import('tailwindcss').Config} */
|
|
export default {
|
|
content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"],
|
|
theme: {
|
|
extend: {
|
|
colors: {
|
|
surface: {
|
|
0: "#06060a",
|
|
1: "#0c0c14",
|
|
2: "#13131e",
|
|
3: "#1a1a28",
|
|
4: "#222233",
|
|
5: "#2a2a3d",
|
|
},
|
|
border: {
|
|
DEFAULT: "#2a2a3d",
|
|
light: "#363650",
|
|
},
|
|
accent: {
|
|
DEFAULT: "#6366f1",
|
|
hover: "#818cf8",
|
|
muted: "rgba(99, 102, 241, 0.15)",
|
|
},
|
|
},
|
|
fontFamily: {
|
|
sans: ["Inter", "-apple-system", "BlinkMacSystemFont", "Segoe UI", "sans-serif"],
|
|
mono: ["JetBrains Mono", "Fira Code", "Consolas", "monospace"],
|
|
},
|
|
animation: {
|
|
"pulse-slow": "pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite",
|
|
"fade-in": "fadeIn 0.3s ease-out",
|
|
"slide-up": "slideUp 0.3s ease-out",
|
|
},
|
|
keyframes: {
|
|
fadeIn: {
|
|
"0%": { opacity: "0" },
|
|
"100%": { opacity: "1" },
|
|
},
|
|
slideUp: {
|
|
"0%": { opacity: "0", transform: "translateY(8px)" },
|
|
"100%": { opacity: "1", transform: "translateY(0)" },
|
|
},
|
|
},
|
|
},
|
|
},
|
|
plugins: [],
|
|
};
|