Inspiration
I hate wasting money. I hate wasting time. And furniture manages to do both at the same time.
Imagine finding that table at IKEA but not knowing how it would look in your house. You have to pay to transport it to your home, spend time assembling it and GUESS WHAT? You end up hating it and returning it back, meaning you wasted all that time and spent money on something you were never going to use.
What if that problem could be solved for everyone?
What it does
Açai is the Canva for 3D interior design.
Upload a photo of your room, upload a photo of a piece of furniture, and in under 30 seconds AI places it inside a live 3D reconstruction of your space.
No Blender or 3D modeling experience needed.
How I built it
Stage 1 [Room Scan] - Upload a photo of your room. Google Gemini analyzes the exact spatial profile and tracks dimensions, wall colour, floor material, and more for the 3D room construction.
Stage 2 [Furniture Capture] - Upload a photo of furniture you want to place. Google Cloud Vision API detects the furniture type with confidence scoring, then Google Gemini performs detailed analysis of style, materials, dimensions, and color palette to prepare it for 3D placement.
Stage 3 [Interactive Design] - View your room in an interactive 3D environment powered by Three.js. Add additional furniture pieces and customize them however you want. Use voice commands powered by ElevenLabs and Gemini to manipulate furniture with natural language like "make the chair bigger" or "rotate the table."
Challenges I ran into
Proper dimensions for the 3D generated model. Often times, it would not generate the model correctly. For example, the walls would unaligned with the floor and it would look very wonky.
Resizing furniture. There would always be some bug where once I resize one chair, the table suddenly defaults back to its original size or position. Very annoying...
Precise voice commands. Making it so furniture could grow/shrink/move/whatever was tough. Really had to make sure that I was correctly parsing the JSON file.
Accomplishments that I'm proud of
That I built this solo. In my past hackathons, I've been in a team so it was much easier to feel motivated and uplift each other. Now I'm just very tired and spirits are down. However, everyone at BearHacks has been really nice to me! Love the random conversations I have :)
Creating a 3D app. Much more complex than I anticipated. Glad I did it because it definitely was a challenge, but genuinely one of the coolest things I've built.
What I learned
A lot more about JavaScript useStates as well as how to implement AI with images. Plus 3D stuff is just really cool.
What's next for Açai
To really capitalize on voice commands and additional input. It would be awesome if Açai could suggest layouts for you depending if you want to go a minimalist route, contemporary etc.
Built With
- eleven-labs
- google-cloud-vision
- google-gemini
- javascript
- react
- three.js
- web-speech-api
Log in or sign up for Devpost to join the conversation.