feat: US-001 — scaffold NeuralDesk Electron + React app

- electron-forge 7 + Vite plugin (vite-typescript template)
- React 19 + TypeScript 5 strict mode
- TanStack Router with file-based routing (4 routes: /, /timeline, /tasks, /projects)
- Tailwind CSS 3 + PostCSS with Figma design tokens (sidebar, primary, muted)
- Framer Motion, Lucide React, shadcn/ui utilities (cn, CVA, clsx, twMerge)
- AppShell layout: 240px sidebar with collapse toggle, active route highlighting
- Vite configs use .mts extension to avoid ESM/CJS conflict with electron-forge
- Full package build verified (linux x64)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Roberto Musso
2026-02-19 15:28:31 +01:00
commit f6cc8bb23a
28 changed files with 14134 additions and 0 deletions

42
tailwind.config.js Normal file
View File

@@ -0,0 +1,42 @@
/** @type {import('tailwindcss').Config} */
module.exports = {
content: ['./index.html', './src/renderer/**/*.{ts,tsx}'],
theme: {
extend: {
fontFamily: {
sans: ['Geist', 'Inter', 'system-ui', 'sans-serif'],
},
colors: {
border: 'hsl(var(--border))',
input: 'hsl(var(--input))',
ring: 'hsl(var(--ring))',
background: 'hsl(var(--background))',
foreground: 'hsl(var(--foreground))',
primary: {
DEFAULT: 'hsl(var(--primary))',
foreground: 'hsl(var(--primary-foreground))',
},
secondary: {
DEFAULT: 'hsl(var(--secondary))',
foreground: 'hsl(var(--secondary-foreground))',
},
muted: {
DEFAULT: 'hsl(var(--muted))',
foreground: 'hsl(var(--muted-foreground))',
},
sidebar: {
DEFAULT: 'hsl(var(--sidebar))',
border: 'hsl(var(--sidebar-border))',
accent: 'hsl(var(--sidebar-accent))',
foreground: 'hsl(var(--sidebar-foreground))',
},
},
borderRadius: {
lg: 'var(--radius)',
md: 'calc(var(--radius) - 2px)',
sm: 'calc(var(--radius) - 4px)',
},
},
},
plugins: [],
};