Synth: - Modular synth with Tone.js: oscillator, LFO, noise, filter, envelope, VCA, mixer, delay, reverb, distortion, output - Keyboard widget (mini SVG + fullscreen piano + computer keys Z-M/Q-I) - Drum pad (4x4 grid, 16 pads with MIDI notes, matching reaktor) - Sequencer (SVG bar grid with pitch/gate editing, matching reaktor) - Live modulation visualization (LFO waveform simulation, envelope, noise) - Knob with drag, wheel, double-click inline edit, modulation glow ring - Pan/zoom viewport, bezier wires colored by port type - Play/Stop audio lifecycle, stereo output with Tone.Merge Sandbox: - New /sandbox page with all editors in freeform mode - Synth fills full viewport height Workbenches: - Code Editor (Monaco) with test cases - Signal Playground (Web Audio oscillator + filter + visualizer) - Pixel Editor (grid canvas with palette and match mode) Deployment: - Dockerfile (multi-stage Next.js standalone build) - .dockerignore - next.config.ts output: standalone - Gitea remote configured Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
41 lines
962 B
JSON
41 lines
962 B
JSON
{
|
|
"name": "project-math-temp",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "next dev",
|
|
"build": "next build",
|
|
"start": "next start",
|
|
"lint": "eslint"
|
|
},
|
|
"dependencies": {
|
|
"@base-ui/react": "^1.3.0",
|
|
"@dagrejs/dagre": "^3.0.0",
|
|
"@monaco-editor/react": "^4.7.0",
|
|
"@types/katex": "^0.16.8",
|
|
"@xyflow/react": "^12.10.1",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"katex": "^0.16.42",
|
|
"lucide-react": "^1.7.0",
|
|
"next": "16.2.1",
|
|
"react": "19.2.4",
|
|
"react-dom": "19.2.4",
|
|
"shadcn": "^4.1.0",
|
|
"tailwind-merge": "^3.5.0",
|
|
"tone": "^15.1.22",
|
|
"tw-animate-css": "^1.4.0",
|
|
"zustand": "^5.0.12"
|
|
},
|
|
"devDependencies": {
|
|
"@tailwindcss/postcss": "^4",
|
|
"@types/node": "^20",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"eslint": "^9",
|
|
"eslint-config-next": "16.2.1",
|
|
"tailwindcss": "^4",
|
|
"typescript": "^5"
|
|
}
|
|
}
|