Najjar\NajjarV02
2eac53dac3
feat(seed): update pricing item seeding to upsert on every deploy
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-05-19 17:46:22 +04:00
Najjar\NajjarV02
fe5f1ce25f
Refactor code structure for improved readability and maintainability
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-05-19 17:44:20 +04:00
Najjar\NajjarV02
52b910ed93
feat(pricing): switch base+EDU prices to AED and unify attire at 5000 AED
...
- `base` (Basic body) → 77,125 AED (Unitree G1 retail $16k + $5k markup)
- new `edu` row → 146,900 AED ($40k flat)
- all persona attire (kandura, vest, suit, robot-doctor, security-guard) → 5,000 AED
- `custom-color` unchanged at 3,500 AED
- PricingEngine now swaps the base line when EDU body is selected
- localStorage key bumped to `lootah-pricing-v2` to invalidate stale client caches
- Robot Body buttons now describe the variants as `Standard consumer` vs `Open-source education / research` (same chassis GLB, differs in licensing)
- New `prisma/update-prices.ts` idempotent script applies the new prices to an existing DB; seed.ts updated for fresh installs
- Pricing tests updated to match new defaults
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 17:40:04 +04:00
Najjar\NajjarV02
03dbc4ac98
feat(configure): add Basic vs EDU robot body selector under Persona Attire
...
- New `activeBody` field in config store with `setBody` action and URL sync (`b` key, defaults to `basic` for backward compat)
- Robot Body section in ConfigPanel between Persona Attire and Pricing
- RobotModel base mesh extracted into BaseBodyMesh subcomponent wrapped in error boundary so a missing EDU GLB silently falls back to basic
- Tests cover defaults, setBody, reset, and round-trip serialization
Note: drop `/public/Unitree_G1_EDU.glb` to enable the EDU variant — until then EDU selection falls back to basic with a console warning.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 17:11:14 +04:00
Najjar\NajjarV02
c26338f355
perf: preload robot-doctor and security-guard GLBs in background on page load
CI/CD / test-and-build (push) Has been cancelled
CI/CD / deploy (push) Has been cancelled
2026-04-20 16:13:12 +04:00
Najjar\NajjarV02
dcb6a9bb43
feat: add new GLB models for police mannequin, medical professional, robot doctor, and security guard
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 16:03:43 +04:00
Najjar\NajjarV02
e220d83397
revert: use original uncompressed GLBs (robot-doctor 30MB, security-guard 38.8MB)
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 16:02:37 +04:00
Najjar\NajjarV02
3741d7386d
chore: remove raw uncompressed GLBs from repo root (keep compressed versions in public/models)
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 16:00:34 +04:00
Najjar\NajjarV02
1e128466f3
fix: prevent duplicate persona entries (race condition in hydrate), remove accidental 54MB file
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 15:59:17 +04:00
Najjar\NajjarV02
2ff21c5b54
perf: compress GLBs 75%, add Draco decoder, loading spinner for attire
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 15:52:00 +04:00
Najjar\NajjarV02
b2a484f402
fix: dynamic attire buttons in ScrollOverlays + mobile touch support
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 15:13:34 +04:00
Najjar\NajjarV02
320b77b32b
fix: contacts API - use ADMIN_JWT_SECRET env var
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 14:31:21 +04:00
Najjar\NajjarV02
822ab076b4
Refactor code structure for improved readability and maintainability
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 13:57:21 +04:00
Najjar\NajjarV02
25ffbf4b5d
feat: add favicon and app icons for PWA support
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 13:53:43 +04:00
Najjar\NajjarV02
4d145ae7b0
feat: add FooterAndContact component and privacy policy page
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 12:07:23 +04:00
Najjar\NajjarV02
e686d41d26
fix: use configStore.getState().setPersonaAttire in ScrollOverlays
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 12:00:20 +04:00
Najjar\NajjarV02
e1599650f0
feat: add GET endpoint to retrieve contact requests with admin authentication
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 11:44:20 +04:00
Najjar\NajjarV02
9394b58b0e
feat: initialize Lootah Robotics web application with 3D configurator and scroll-driven UI components
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-20 11:36:04 +04:00
Najjar\NajjarV02
6c5f1f7f15
feat: enhance overlay button styles for improved visibility and user experience
CI/CD / test-and-build (push) Has been cancelled
CI/CD / deploy (push) Has been cancelled
2026-04-17 16:35:47 +04:00
Najjar\NajjarV02
7503a487ee
feat: adjust overlay CTA section positioning for improved visibility
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 16:30:53 +04:00
Najjar\NajjarV02
90a43c4312
feat: update overlay positioning and styles for improved CTA visibility
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 16:24:20 +04:00
Najjar\NajjarV02
1788df79e1
feat: add ConfigurePage with back button and ConfiguratorSection integration
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 16:17:52 +04:00
Najjar\NajjarV02
11ab8908fa
feat: enhance pricing and persona synchronization logic for improved data consistency
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 16:08:11 +04:00
Najjar\NajjarV02
13050a6541
feat: fetch and auto-register personas from server pricing items
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 15:58:00 +04:00
Najjar\NajjarV02
26770e070c
feat: refine overlay positioning and styles for improved layout on ScrollOverlays component
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 15:57:02 +04:00
Najjar\NajjarV02
8216cbe0c0
feat: implement pricing item model and CRUD API for pricing management
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 15:55:59 +04:00
Najjar\NajjarV02
5aba12f163
feat: add type definitions for draco3dgltf module
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 15:42:27 +04:00
Najjar\NajjarV02
a955da7ec8
feat: add responsive overlay styles and enhance ScrollOverlays component
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 15:37:27 +04:00
Najjar\NajjarV02
83d0d9ab00
feat: add GLTF transformation and compression support
...
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
- Updated package.json to include @gltf-transform/core, @gltf-transform/extensions, @gltf-transform/functions, and draco3dgltf for GLB file processing.
- Implemented GLB compression using Draco in the upload model API route.
- Adjusted camera keyframes in ScrollScene for improved animation.
- Enhanced overlay styles in ScrollOverlays for better visual clarity.
- Added original GLB files for Kandoura, Suit, Unitree_G1, and Vest.
- Updated existing GLB files for Kandoura, Suit, Unitree_G1, and Vest.
2026-04-17 15:34:41 +04:00
Najjar\NajjarV02
6dc705b332
feat: add AttireErrorBoundary component for improved error handling in attire model loading
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 15:19:54 +04:00
Najjar\NajjarV02
ed6ebcc8af
feat: update attire model loading strategy to improve initial load performance
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 15:13:42 +04:00
Najjar\NajjarV02
9b8a50672e
Add favicon.ico to the application
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 15:01:05 +04:00
Najjar\NajjarV02
e8dda14973
feat: update page title for improved branding consistency
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 14:56:36 +04:00
Najjar\NajjarV02
b9444979f2
feat: enhance responsive design for glass panel and configurator section
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 13:29:44 +04:00
Najjar\NajjarV02
0793a650fb
feat: add Robot Doctor and Security Guard personas with pricing and model paths
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-17 10:10:54 +04:00
Najjar\NajjarV02
f53b2d3cb8
feat: update seed script to TypeScript and add tsx dependency
CI/CD / test-and-build (push) Has been cancelled
CI/CD / deploy (push) Has been cancelled
2026-04-15 10:53:51 +04:00
Najjar\NajjarV02
2397bf7f71
feat: add seed.js for database seeding functionality
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:49:04 +04:00
Najjar\NajjarV02
22387dbfe1
feat: compile and use seed.js for database seeding in entrypoint script
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:46:42 +04:00
Najjar\NajjarV02
61f1e0f589
fix: rename middleware function to proxy for clarity
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:42:24 +04:00
Najjar\NajjarV02
dc99abad37
feat: update Dockerfile to include Prisma seed script and enhance entrypoint for seeding
...
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
feat: migrate middleware logic to new proxy.ts file for improved structure
2026-04-15 10:39:41 +04:00
Najjar\NajjarV02
45ffd33d39
feat: remove --skip-generate option from Prisma db push in entrypoint script
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:30:13 +04:00
Najjar\NajjarV02
4924593b40
feat: consolidate Prisma CLI dependencies in Dockerfile for cleaner build
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:25:09 +04:00
Najjar\NajjarV02
7227d0d10f
feat: simplify Dockerfile by consolidating Prisma dependencies copy commands
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:21:40 +04:00
Najjar\NajjarV02
c34e565132
feat: update Dockerfile to copy additional Prisma dependencies from deps stage
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:17:47 +04:00
Najjar\NajjarV02
2b2198dfcb
feat: set output configuration to standalone in Next.js config
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:12:14 +04:00
Najjar\NajjarV02
138e8377a6
feat: update environment configuration for production and add Docker support
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-15 10:04:07 +04:00
Najjar\NajjarV02
3fbdc3b187
feat: add snapshot caching functionality to PricingEngine and implement snapshot store
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-14 10:47:27 +04:00
Najjar\NajjarV02
bb3b1f25f2
refactor: remove order synchronization logic from admin page and streamline order loading
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-14 10:45:27 +04:00
Najjar\NajjarV02
9a1a562fc6
feat: implement order synchronization with Stripe and enhance order management features
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-14 10:34:19 +04:00
Najjar\NajjarV02
a501d94645
feat: implement GLB file synchronization and add API for listing models
CI/CD / test-and-build (push) Waiting to run
CI/CD / deploy (push) Blocked by required conditions
2026-04-14 10:16:56 +04:00