48 Commits

Author SHA1 Message Date
wass08
8345e42119 removed non logged in editor 2026-02-26 12:04:12 +09:00
wass08
c77381a59a fix deletion of assets on delete ref and delete proj 2026-02-26 09:56:50 +09:00
wass08
b167702bca store reference assets on supabase 2026-02-26 09:56:50 +09:00
Aymeric Rabot
48d5091bb3
UX polish: selection behavior, styling, and site panel improvements (#119)
* Remove .env.local guard; add portless dep

Remove the check that blocked a local .env.local in apps/editor's dev script and simplify the dev startup to source the root .env. Add portless@^0.4.2 to the project dependencies in package.json. Lockfile updated accordingly.

* Improve tool cursors, previews, and contextual tools

Revamp editor tool visuals and behaviour: replace mesh cursors with a new CursorSphere Group (adds ground marker, vertical indicator and optional tool icon tooltip), unify preview colors to #818cf8, add ground-level previews and ghost lines for ceiling and roof tools, and update slab/zone/wall visuals to match. Add automatic build-mode switching and contextual highlighting for structure tools via a new useContextualTools hook, and relax action-menu visibility checks so tool rows are shown even when not in build mode. Minor typing/import adjustments and small opacity/placement tweaks across multiple tool components.

* Keep tools active and refine action-menu styles

Stop auto-deactivating tools in RoofTool and ZoneTool by removing setTool(null) (and setMode('select') in roof). Add hasActiveTool checks and small layout padding to FurnishTools and StructureTools, and update button classes to improve visual emphasis: smoother transitions, stronger active rings/scale, and dimming/grayscale of non-active tools when another tool is active. These changes improve UX by keeping the selected tool active and giving clearer visual feedback in the action menu.

* Improve selection behavior and refresh UI styling

SelectionManager: add global enter/leave/double-click handlers to support cross-phase hovering and auto-switching into structure/furnish on double-click; normalize click handling (explicitly coalesce shiftKey). Remove per-strategy enter/leave listeners.

UI panels & controls: unify and modernize styles across many panels (ceiling, door, item, reference, roof, slab, wall, window) and action buttons — rounded-md, neutral borders, subtle shadows, translucent headers and consistent hover/focus states. Update view toggles icons and toggle styling.

NumberInput: integrate @number-flow/react NumberFlow for formatted value display, add visual drag progress indicator and refine input/label interactions and styling.

Sidebar: replace rename-popover with inline-rename-input and update tree nodes to use inline editing. Add slider-demo and tweak slider implementation. Update package.json accordingly.

* Use Barlow font across editor UI

Add the Google Barlow font and expose it as a CSS variable, update theme font variables in globals.css, and apply the new font across the editor UI. Imports: add Barlow in app/layout.tsx and include its variable on <html>, set body to use font-sans. Apply font-barlow or font-mono classes to headings, labels, numeric readouts and buttons across multiple panels and primitives to standardize typography. Also update button base variant to include font-barlow. Remove the PhaseSwitcher component and its import/usage from the action menu.

* Replace button wrapper with div in LevelItem

Replace the outer <button> around the LevelItem content with a <div> to avoid nesting interactive button elements (and the resulting invalid HTML/interaction issues). Preserves the original classes and onClick/onDoubleClick handlers so behavior remains the same and allows the PopoverTrigger/button children to function correctly.

* Refine site panel list styles and spacing

Update the SitePanel and TreeNode UI to use compact, border-bottom list rows instead of rounded, card-like items. Simplified active/hover states to use bg-accent variants and reduced shadow/ring styles for a cleaner look. Adjusted paddings (pl/px/py) and container layouts (many sections switched to flex-col) and increased tree node indent/paddingRight for consistent alignment. These changes unify spacing and visual hierarchy across levels, buildings, zones and tree nodes.

* Add auto-scroll to selected items and refine icon styles

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 18:05:02 -05:00
wass08
27e4afb757 draft custom door 2026-02-25 13:28:42 +09:00
Wassim SAMAD
2182fe535d
Merge pull request #116 from pascalorg/fix/community-feedback-pass-3
Fix/community feedback pass 3
2026-02-24 16:17:44 +09:00
wass08
81ede241d5 save site + camera build position 2026-02-24 14:48:59 +09:00
Aymeric Rabot
db05c86120
Add scene graph viewer and persist migration (#115)
Render an interactive Scene Graph in the Settings panel using @visual-json/react. Introduces SceneNode/SceneGraphNode types and buildSceneGraphValue to build a tree (handles missing nodes and cycles), and adds handlers to block drag/drop/context/delete mutations inside the viewer. Adds @visual-json/react to apps/editor package.json and updates the dev script to forbid .env.local and source the root .env instead. Also adds a persistence migration in use-scene to preserve existing nodes and rootNodeIds when the persist version changes.
2026-02-24 00:40:18 -05:00
Aymeric Rabot
f4f9f8a220
feat: add project visibility settings for scans and floorplans (#106)
- Add show_scans_public and show_guides_public columns to projects table
- Add visibility toggles to editor sidebar settings panel (auto-save)
- Add visibility toggles to project settings dialog (auto-save)
- Propagate settings to community viewer (hide scans/guides for non-owners)
- Add updateProjectVisibility server action
- Fix username onboarding dialog stuck after DB reset (validate update affected rows)
- Add error handling to UsernameGate for stale sessions

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-19 16:59:23 -05:00
Anton
ff85765728
fix: resolve react-doctor errors (hooks order, reduced motion, key prop) (#105)
- Move useCallback hooks before early return in ReferencesDialog
  to fix conditional hook call violation (Rules of Hooks)
- Add useReducedMotion hook and apply to all motion animations
  for WCAG 2.3.3 accessibility compliance
- Replace useEffect state reset with key prop on ItemCatalog
  for proper React reconciliation on category change
- Add global prefers-reduced-motion CSS media query

Fixes 4 react-doctor errors, bringing score from 81 to ~85+.
2026-02-19 19:20:05 +00:00
Aymeric Rabot
9a0f83a1ec
feat: SEO improvements, OG image endpoint, favicon, and metadata (#104)
- Add dynamic OG image generation endpoint (/og) adapted from monorepo
- Replace favicon with monorepo version, remove unused icon.svg
- Add seo.ts config, robots.ts, sitemap.ts for better search indexing
- Add per-page metadata (editor, viewer, settings, profile, community)
- Remove stale package-lock.json that caused ENOWORKSPACES errors with Next.js
- Add OG fonts (Geist Regular, Plus Jakarta Sans SemiBold)

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-19 13:38:34 -05:00
wass08
e8fcc840d5 surface placement 2026-02-18 16:26:17 +09:00
wass08
c0676f684e item surfaces 2026-02-18 16:06:23 +09:00
wass08
1cceb50ab6 fix thumbnail issues 2026-02-18 09:49:57 +09:00
Anton Pascal
ee30f17129 feat: rename properties to projects
- Rename all DB tables: properties → projects, properties_addresses → projects_addresses, properties_models → projects_models, property_likes → projects_likes
- Add projects_likes as proper Drizzle schema table (was SQL-only before)
- Rename ID prefixes: property_xxx → project_xxx
- Rename auth_sessions column: active_property_id → active_project_id
- Simplify project creation: address is now optional (no longer required to get started)
- Update all actions, stores, types, components, and routes
- Rename route: /editor/[propertyId] → /editor/[projectId]
- Add SQL migration for table/column/index/policy/function renames
- Update RPC functions: increment_project_views, get_project_like_count
- Update storage bucket reference: project-thumbnails
- All types/exports follow existing Drizzle patterns (pgTable, relations, zod schemas)
2026-02-17 20:40:52 +00:00
wass08
dd5f63df64 wall tool draft 2026-02-17 16:22:45 +09:00
wass08
078b2500a3 handle thumbnails (manual) 2026-02-17 12:07:32 +09:00
wass08
0b200bfe5d hub 2026-02-16 14:11:40 +09:00
wass08
0797a828f8 fix build issues 2026-02-12 10:56:56 +09:00
wass08
be7e86975e radio & sfx 2026-02-12 08:57:37 +09:00
wass08
b4375792ab fix extra rebuild 2026-02-10 14:07:56 +09:00
wass08
cba709cb81 bring back site edition + zindex fix 2026-02-09 16:11:50 +09:00
wass08
a7683924a6 fix shown items in the tree 2026-02-06 13:16:59 +09:00
wass08
39f9f595d8 scene starting with site and not with building anymore 2026-02-05 14:42:46 +09:00
wass08
3579dccf9a fix opacity 3d scans 2026-02-05 10:22:06 +09:00
wass08
549bfb3f29 handle visible/invisible items 2026-02-02 10:33:36 +09:00
wass08
f98ead4585 camera for zones and levels 2026-02-02 10:24:57 +09:00
wass08
498da300db export / load json 2026-01-30 07:48:52 +09:00
wass08
07dee4aefc rename items 2026-01-29 15:37:51 +09:00
wass08
f1a61350c7 roof 2026-01-29 12:52:35 +09:00
wass08
c94f661bf9 scans and ref image 2026-01-29 09:38:24 +09:00
wass08
e27028a29a working ceiling items 2026-01-28 06:55:56 +09:00
wass08
e3e3602d91 ceiling 2026-01-27 09:25:40 +09:00
wass08
fd4c097d5b fix clear start 2026-01-27 07:40:46 +09:00
wass08
0e3130bd60 slab rendering + select 2026-01-27 07:37:06 +09:00
wass08
d651cca79a hover seletion 2026-01-26 09:02:10 +09:00
wass08
1861173428 nice state switch 2026-01-26 08:24:10 +09:00
wass08
b86537066f revamp sidebar 2026-01-26 08:03:14 +09:00
wass08
192a58c47e transforming zones to nodes 2026-01-26 07:40:52 +09:00
wass08
cc9d9916b7 data persist 2026-01-23 09:56:06 +09:00
wass08
68e573f494 zone creation editor 2026-01-22 10:11:15 +09:00
wass08
1f23792f9c camera view 2026-01-22 08:14:42 +09:00
wass08
36d45fe695 fix ui issue 2026-01-22 07:24:38 +09:00
wass08
48f7d7ffa4 syncing sidebar 2026-01-21 11:57:31 +09:00
wass08
a338bea4e7 rewrite selection system 2026-01-21 08:00:31 +09:00
wass08
dabaefc57a different level edition + fix 2026-01-20 08:26:47 +09:00
wass08
a35b982b4f sidebar + starting controls 2026-01-19 10:56:23 +09:00
wass08
cba00f7cc7 bring sidebar 2026-01-19 10:17:36 +09:00