A full-stack, web-based furniture design platform built for in-store designers to create, visualize, and present room layouts in 2D and 3D β helping customers make confident, informed furniture choices.
π Live Demo : https://livora-rho.vercel.app
- Admin Login:
https://livora-rho.vercel.app/admin/login - User Login:
https://livora-rho.vercel.app/user-panel/login - User Registration:
https://livora-rho.vercel.app/user-panel/register
- Admin Login:
http://localhost:3000/admin/login - User Login:
http://localhost:3000/user-panel/login - User Registration:
http://localhost:3000/user-panel/register
Default Admin Credentials
- Email:
admin@livora.com - Password:
Admin@123
Sample User Credentials (Password: User@123)
roshan@example.comΒ·priya@example.comΒ·kamal@example.comtharinda@example.comΒ·amara@example.comΒ·nisha@example.com
git clone https://github.com/your-org/livora.git
cd livoracd livora-backend
npm install
npm run devBackend runs on:
http://localhost:5000
npm install
npm run devFrontend runs on:
http://localhost:3000
cd livora-backend
npx ts-node src/seed.ts
| Module | Capabilities |
|---|---|
| π Authentication |
|
| π Admin Dashboard |
|
| π Room Setup |
|
| βοΈ 2D Layout Editor |
|
| π§ 3D Visualization |
|
| πͺ Furniture Catalogue Management |
|
| βοΈ Design Comparison |
|
| π° Cost Summary & Reports |
|
| π Design History |
|
| π Consultation Management |
|
| βοΈ Profile / Settings |
|
| Module | Capabilities |
|---|---|
| ποΈ Furniture Catalogue |
|
| π Furniture Detail Page |
|
| β€οΈ Wishlist |
|
| π Consultation Request |
|
| β Reviews & Ratings |
|
| π€ User Account |
|
| Shortcut | Action |
|---|---|
Ctrl + Z |
Undo |
Ctrl + Y |
Redo |
Ctrl + S |
Save design |
R |
Rotate selected furniture |
Delete |
Delete selected furniture |
Escape |
Deselect |
Arrow Keys |
Move furniture |
Shift + Arrow |
Fine movement |
| Shortcut | Action |
|---|---|
Enter |
Submit form |
Tab |
Next field |
Shift + Tab |
Previous field |
| Context | Interaction | Action |
|---|---|---|
| 2D Editor | Click product | Place furniture |
| 2D Editor | Click + Drag | Move furniture |
| 2D Editor | Right Click + Drag | Pan canvas |
| 2D Editor | Scroll Wheel | Zoom |
| 3D View | Left Drag | Orbit camera |
| 3D View | Right Drag | Pan camera |
| 3D View | Scroll Wheel | Zoom |
| Catalogue | Heart icon | Add / remove wishlist |
| Consultations | Eye icon | View consultation details |
| Consultations | Accept / Reject | Update status |
| Layer | Technology |
|---|---|
| Frontend | Next.js 16, React 19, TypeScript, Tailwind CSS |
| Backend | Express.js 5, TypeScript |
| Database | MongoDB Atlas |
| Authentication | JWT + bcrypt |
| 3D Rendering | Three.js + React Three Fiber |
| PDF Export | PDFKit |
| Icons | Lucide React |
- Authentication Module β JWT-based login, session & role management
- Room Design Module β Room setup, dimensions, textures, colour schemes
- 2D Rendering Module β Canvas editor, drag-and-drop, snap, undo/redo
- 3D Visualization Module β Three.js scene, lighting, camera presets
- Furniture Management Module β Catalogue CRUD, image upload, bulk import
- Cost Calculation Module β Itemised breakdown, totals, PDF export
- Comparison Module β Side-by-side design comparison
- User Interaction Module β Wishlist, reviews, consultation requests
- Reporting Module β Design history, audit log, cost reports
- Usability β Intuitive, consistent interface requiring minimal training
- Feedback β Immediate visual/textual confirmation for all actions
- Error Prevention β Clear prompts and undo options throughout
- Accessibility β Colour contrast, font size options, dark/high-contrast modes
- Efficiency β Minimal steps per task for smooth customer consultations
- Engagement β Immersive 3D visualization and interactive 2D editor
This project was developed as part of PUSL3122 β HCI, Computer Graphics & Visualisation coursework.
Built with β€οΈ by the Livora Team