# Atomizer Studio - Technical Implementation Plan **Version**: 1.0 **Date**: January 24, 2026 **Status**: In Progress **Author**: Atomizer Team --- ## 1. Executive Summary **Atomizer Studio** is a unified, drag-and-drop study creation environment that consolidates file management, visual configuration (Canvas), and AI assistance into a single real-time workspace. It replaces the legacy wizard-based approach with a modern "Studio" experience. ### Core Principles | Principle | Implementation | |-----------|----------------| | **Drag & Drop First** | No wizards, no forms. Drop files, see results. | | **AI-Native** | Claude sees everything: files, parameters, goals. It proposes, you approve. | | **Zero Commitment** | Work in "Draft Mode" until ready. Nothing is permanent until "Build". | --- ## 2. Architecture ### 2.1 The Draft Workflow ``` User Opens /studio │ ▼ POST /intake/draft ──► Creates studies/_inbox/draft_{id}/ │ ▼ User Drops Files ──► Auto-Introspection ──► Parameters Discovered │ ▼ AI Reads Context ──► Proposes Configuration ──► Canvas Updates │ ▼ User Clicks BUILD ──► Finalize ──► studies/{topic}/{name}/ ``` ### 2.2 Interface Layout ``` ┌───────────────────┬───────────────────────────────────────────────┬───────────────────┐ │ RESOURCES (Left) │ CANVAS (Center) │ ASSISTANT (Right) │ ├───────────────────┼───────────────────────────────────────────────┼───────────────────┤ │ ▼ DROP ZONE │ │ │ │ [Drag files] │ ┌───────┐ ┌────────┐ ┌─────────┐ │ "I see you want │ │ │ │ Model ├─────►│ Solver ├─────►│ Extract │ │ to minimize │ │ ▼ MODEL FILES │ └───────┘ └────────┘ └────┬────┘ │ mass. Adding │ │ • bracket.sim │ │ │ objective..." │ │ • bracket.prt │ ┌────▼────┐ │ │ │ │ │ Objectiv│ │ [Apply Changes] │ │ ▼ PARAMETERS │ └─────────┘ │ │ │ • thickness │ │ │ │ • rib_count │ AtomizerSpec v2.0 │ │ │ │ (Draft Mode) │ │ │ ▼ CONTEXT │ │ │ │ • goals.pdf │ │ [ Chat Input... ] │ ├───────────────────┼───────────────────────────────────────────────┼───────────────────┤ │ [ Reset Draft ] │ [ Validate ] [ BUILD STUDY ] │ │ └───────────────────┴───────────────────────────────────────────────┴───────────────────┘ ``` --- ## 3. Implementation Phases ### Phase 1: Backend API Enhancements - `POST /intake/draft` - Create anonymous draft - `GET /intake/{id}/context/content` - Extract text from uploaded files - Enhanced `POST /intake/{id}/finalize` with rename support ### Phase 2: Frontend Studio Shell - `/studio` route with 3-column layout - DropZone component with file categorization - Integrated Canvas in draft mode - Parameter discovery panel ### Phase 3: AI Integration - Context-aware chat system - Spec modification via Claude - Real-time canvas updates ### Phase 4: Polish & Testing - Full DevLoop testing - Edge case handling - UX polish and animations --- ## 4. File Structure ``` atomizer-dashboard/ ├── frontend/src/ │ ├── pages/ │ │ └── Studio.tsx │ ├── components/ │ │ └── studio/ │ │ ├── StudioLayout.tsx │ │ ├── ResourcePanel.tsx │ │ ├── StudioCanvas.tsx │ │ ├── StudioChat.tsx │ │ ├── DropZone.tsx │ │ ├── ParameterList.tsx │ │ ├── ContextFileList.tsx │ │ └── BuildDialog.tsx │ └── hooks/ │ └── useDraft.ts ├── backend/api/ │ └── routes/ │ └── intake.py (enhanced) ``` --- ## 5. API Endpoints ### New Endpoints | Endpoint | Method | Description | |----------|--------|-------------| | `/intake/draft` | POST | Create anonymous draft study | | `/intake/{id}/context/content` | GET | Extract text from context files | ### Enhanced Endpoints | Endpoint | Change | |----------|--------| | `/intake/{id}/finalize` | Added `new_name` parameter for rename | --- ## 6. Status - [x] Plan documented - [ ] Phase 1: Backend - [ ] Phase 2: Frontend Shell - [ ] Phase 3: AI Integration - [ ] Phase 4: Testing & Polish