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

55
package.json Normal file
View File

@@ -0,0 +1,55 @@
{
"name": "neuraldesk",
"productName": "NeuralDesk",
"version": "0.1.0",
"description": "Local-first intelligent desktop workspace",
"main": ".vite/build/main.js",
"private": true,
"scripts": {
"start": "electron-forge start",
"package": "electron-forge package",
"make": "electron-forge make",
"publish": "electron-forge publish",
"lint": "eslint --ext .ts,.tsx ."
},
"keywords": [],
"author": "rmusso",
"license": "MIT",
"devDependencies": {
"@electron-forge/cli": "^7.11.1",
"@electron-forge/maker-deb": "^7.11.1",
"@electron-forge/maker-rpm": "^7.11.1",
"@electron-forge/maker-squirrel": "^7.11.1",
"@electron-forge/maker-zip": "^7.11.1",
"@electron-forge/plugin-auto-unpack-natives": "^7.11.1",
"@electron-forge/plugin-fuses": "^7.11.1",
"@electron-forge/plugin-vite": "^7.11.1",
"@electron/fuses": "^1.8.0",
"@tanstack/router-vite-plugin": "^1.161.1",
"@types/electron-squirrel-startup": "^1.0.2",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"@typescript-eslint/eslint-plugin": "^5.62.0",
"@typescript-eslint/parser": "^5.62.0",
"@vitejs/plugin-react": "^5.1.4",
"autoprefixer": "^10.4.24",
"electron": "40.6.0",
"eslint": "^8.57.1",
"eslint-plugin-import": "^2.32.0",
"postcss": "^8.5.6",
"tailwindcss": "^3.4.19",
"typescript": "^5.9.3",
"vite": "^5.4.21"
},
"dependencies": {
"@tanstack/react-router": "^1.161.1",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"electron-squirrel-startup": "^1.0.1",
"framer-motion": "^12.34.2",
"lucide-react": "^0.575.0",
"react": "^19.2.4",
"react-dom": "^19.2.4",
"tailwind-merge": "^3.5.0"
}
}