- Add base plate and leg shoe system to materials list - Add WAGO holders (221-413, 221-415) and AC cover plate - Add fasteners category (screws, foam rubber) - Create CodeBlock component with copy-to-clipboard - Add complete ESPHome YAML configuration - Add complete Home Assistant automations - Extend mechanical section with leg shoe documentation - Update translations (DE/EN) for new content - Update README with mechanical design and smart home sections 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
DruckWerk
A professional 3D printer enclosure documentation site built with SvelteKit.
About
DruckWerk documents the construction of a professional 3D printer enclosure built from an IKEA table. The enclosure features:
- Fixed 230V power input via IEC C14
- Internal AC distribution via WAGO terminals
- Dual-output PSU (12V + 5V)
- ESP32 control with PWM for LEDs and fans
- Home Assistant integration
- Cleanly separated AC and DC zones
- BME280 temperature and humidity sensor
- 4x 120mm PWM fans (1 intake, 2 exhaust, 1 carbon filter)
- Detachable top plate with vibration-isolating leg shoes
- Base plate system for stability
Mechanical Design
Leg Shoe System
- Upper shoes: Mount to removable top plate, 100mm sleeve with foam rubber lining for vibration isolation
- Lower shoes: Cup design for base plate, centers and stabilizes table legs
- Base plate: 550x550mm multiplex/plywood (12mm)
3D Printed Parts
All printed parts designed for PETG/ASA:
- Corner brackets (12x)
- Door hinges, handle, stops
- WAGO holders (221-413 for AC, 221-415 for DC)
- AC zone cover plate
- Leg shoes (upper & lower, 4x each)
- Cable strain relief
Smart Home Integration
ESPHome Configuration
Complete ESPHome config included with:
- PWM control for LEDs (3 kHz) and 4 fans (25 kHz)
- BME280 I2C sensor (temp, humidity, pressure)
- Physical buttons for light toggle and fan boost
- Overtemperature protection (>45°C triggers max cooling)
- Boost mode script (10 min high-speed ventilation)
Home Assistant Automations
Ready-to-use automations for:
- Material-based fan profiles (PLA, PETG, ABS)
- Overtemperature failsafe with notifications
- Post-print carbon filter run (15 min for ABS)
- Default enclosure state management
Tech Stack
- SvelteKit - Web framework
- Svelte 5 - UI framework
- Tailwind CSS 4 - Styling
- TypeScript - Type safety
- Lucide - Icons
Features
- Bilingual support (English / German)
- Dark / Light theme toggle
- Responsive design
- Component-based documentation structure
- Complete materials list with purchase links
- Step-by-step build instructions
- Wiring diagrams and pinouts
- Copy-to-clipboard config files
- Interactive safety checklist with progress tracking
Development
# Install dependencies
npm install
# Start development server
npm run dev
# Build for production
npm run build
# Preview production build
npm run preview
Project Structure
src/
├── lib/
│ ├── components/ # Reusable UI components
│ │ ├── CodeBlock.svelte # YAML display with copy button
│ │ ├── Checklist.svelte # Interactive checklist
│ │ ├── MaterialsList.svelte # BOM display
│ │ └── ...
│ ├── data/
│ │ ├── materials.ts # Complete BOM
│ │ └── configs.ts # ESPHome & HA YAML configs
│ ├── i18n/ # Translations (en, de)
│ └── stores/ # Svelte stores (language, theme)
├── routes/ # SvelteKit pages
└── app.css # Global styles with wire color scheme
STL Files
The following STL files are referenced in the documentation:
wago_221-413_holder_m3sq.stlwago_221-415_holder_m3sq.stlwago_ac_cover_plate.stlleg_shoe_top_extension_100mm_mountplate.stlleg_shoe_bottom_cup.stlbase_plate_550x550x12_with_pilots.stl(drill template)
License
This project is licensed under the GPL-3.0-or-later license. See LICENSE for details.
Languages
Svelte
51.8%
TypeScript
44.1%
CSS
3%
HTML
0.6%
JavaScript
0.5%