6 Commits

Author SHA1 Message Date
alexei.dolgolyov 8c61cd182e feat(furniture): add scratching post with simple, tree, condo, wall variants
New SCRATCHING_POST type under a new "pets" category with 8 presets
covering single posts, multi-tier cat trees, enclosed condos, and
wall-mounted scratcher pads. Includes 3D meshes, i18n labels (en/ru),
and palette integration.
2026-04-16 14:59:04 +03:00
alexei.dolgolyov c808bf1add feat(furniture): nightstand legs, bookcase columns/drawers, AC unit LG style, soundbars, wood-cube sconce
- NIGHTSTAND: optional legs with adjustable height (capped at 60% of total height)
- BOOKCASE: shelfColumns with vertical dividers, per-cell drawer fronts with handles,
  z-fighting fix between dividers and back panel, stale drawerCells pruned on grid shrink
- AC_UNIT: new 'lg' style with dark vent, grille lines, deflector flap, LG accent
- SPEAKER: new 'soundbar' variant (90/110/140cm) with grille, driver cones, LED strip;
  SpeakerMesh split into dispatcher + SpeakerCabinetMesh to keep hook order stable
- Wall light: new 'wood-cube' style (wooden block sconce with top/bottom glow)
- PropertiesPanel: tf() helper replaces repeated i18n.exists fallbacks; inline checkbox
  styles consolidated into styles.checkboxLabel
- Translations: en/ru entries for new property keys
2026-04-16 03:06:08 +03:00
alexei.dolgolyov 5929ba6bbb feat: add WALL_CABLE electrical type and room outlet/switch count stats
Add wall cable item — a bare cable exit from the wall for direct
consumer connection without an outlet. Includes 2D symbol (circle +
cable stub), 3D mesh (round plate + protruding cable), and palette entry.

Also add outlet and switch count metrics to the room info section in
the properties panel.
2026-04-13 11:16:54 +03:00
alexei.dolgolyov 521ea5e85b feat: add outlet direction (horizontal/vertical), wall light styles, floor textures, and stretch ceiling
- Add configurable outlet direction (horizontal/vertical) stored in metadata
- Add wall light style variants (classic, pendant-globe, sconce-up, sconce-down)
- Add PBR floor textures including natural oak
- Add stretch ceiling offset support with DB migration
- Add furniture surface texture selection
- Add canvas theme colors utility for dark mode support
- Update projection views with improved rendering
- Add EN and RU translations for all new properties
2026-04-12 20:52:49 +03:00
alexei.dolgolyov d8a914bf2a feat: editor improvements and collapsible sidebars
Add collapse/expand toggle for the AppShell navigation sidebar and the
editor properties panel (both persisted to localStorage). Bundles other
in-progress editor work including position anchors, outlet sizing, PBR
textures, window slope/frame depth, curtain metadata, and various 2D/3D
rendering tweaks.
2026-04-08 12:27:57 +03:00
alexei.dolgolyov af8b9fe00f feat: complete house plan maker application
Full-featured house/apartment floor plan editor with:

- Turborepo monorepo (React/Vite client, Fastify/Prisma server, shared Zod schemas)
- 2D room editor with walls, doors, windows, furniture, electrical elements
- 3D room preview with Three.js (auto-hide nearest walls, bird's eye default)
- Wall projection views with interactive drag (elevation, position)
- Apartment floor plan view with room positioning
- Copy/paste, alignment tools, measurement tool, annotations
- Item-attached annotations with leader lines (visible on projections)
- Door open direction (LEFT/RIGHT/INWARD/OUTWARD) with swing arc
- Floor type textures (wood, tile, concrete, laminate, herringbone)
- Wall color picker for 3D view
- Furniture: bed, desk, wardrobe, sofa, table, chair, shelf, nightstand, dresser, bookcase, TV (with stand toggle), AC unit
- Furniture elevation support (wall-mounted items)
- Auto-save with dirty state tracking, batch save API
- Rotation-aware collision detection (SAT/OBB) with 3D elevation check
- Rotation-aware hit testing
- i18n (English/Russian) with locale-aware number formatting
- Dark mode with system preference detection
- Undo/redo, keyboard shortcuts, scale bar
- PDF/PNG/JSON export and JSON import
- Focus trap modal, toast notifications, tooltips
- Responsive layout with overlay palettes
2026-04-05 22:34:03 +03:00