Solution Architecture
Designed the overall application architecture to support scalability, maintainability, and future feature expansion.

A modern full-stack furniture platform simplifying product discovery, custom furniture requests, and customer engagement.
Role
Full Stack Developer
Duration
2026 – Present
Status
In Progress
Project Overview
Homify Furniture is an ongoing full-stack web application designed to modernize how furniture businesses showcase products and manage custom furniture requests. The platform combines a responsive customer experience with a scalable backend architecture built using Next.js, PostgreSQL, Prisma ORM, Docker, and Cloudinary. It is being developed with production-ready practices in mind while continuously evolving through new features and architectural improvements.
The Problem
Many furniture businesses still rely heavily on walk-in customers, phone calls, and WhatsApp conversations to sell products and handle custom furniture requests. This fragmented process makes it difficult for customers to browse available products, communicate design requirements, receive quotations, and track their requests efficiently. At the same time, business owners lack a structured system for managing customer inquiries, custom orders, and product information, limiting both operational efficiency and business growth.
The Solution
Homify Furniture addresses these challenges through a modern full-stack web application that enables customers to browse furniture products, submit custom furniture requests with reference images, and communicate with the business through a structured digital workflow. Behind the scenes, the application uses a PostgreSQL database managed with Prisma ORM, Next.js API Route Handlers, Cloudinary for media storage, and Docker for a consistent development environment. The architecture has been designed to accommodate future capabilities such as authentication, order management, MPesa payments, and an administrative dashboard.
My Role
As the Full Stack Developer, I am responsible for the ongoing design and development of Homify Furniture, translating real business needs into a scalable full-stack web application. My work spans the entire development lifecycle—from designing the application architecture and database schema to building responsive user interfaces, developing backend APIs, integrating third-party services, and maintaining a consistent Docker-based development environment. As new requirements emerge, I continue to refine the platform with a strong focus on scalability, maintainability, performance, and delivering an excellent user experience.
Designed the overall application architecture to support scalability, maintainability, and future feature expansion.
Developed responsive user interfaces using Next.js, TypeScript, and Tailwind CSS.
Designed and implemented a relational PostgreSQL database using Prisma ORM.
Built RESTful APIs using Next.js Route Handlers to power application workflows.
Integrated Cloudinary for secure image uploads and optimized media delivery.
Containerized the application with Docker to ensure consistent development and deployment environments.
Key Features
Browse furniture through an organized catalogue with category filtering and detailed product pages.
Submit custom furniture requirements by uploading reference images and providing detailed specifications.
Quickly discover products through intuitive browsing and category-based navigation.
Add products to a shopping cart and prepare for a streamlined checkout process.
Connect directly with the furniture business through pre-filled WhatsApp conversations.
Designed for a seamless experience across desktop, tablet, and mobile devices.
System Architecture
The application follows a layered architecture that separates presentation, business logic, data management, and external integrations. This makes the solution easier to maintain, extend, and evolve over time.
Next.js • React • Tailwind CSS
Provides a responsive customer interface for browsing products, viewing furniture details, managing the shopping cart, and submitting custom furniture requests.
Next.js Route Handlers
Implements business logic, validates requests, exposes RESTful APIs, and coordinates communication between the frontend, database, and third-party services.
PostgreSQL • Prisma ORM
Stores application data including products, categories, custom requests, and future order management using a relational database schema.
Cloudinary
Handles secure image uploads and optimized delivery for product images and customer reference photos.
Allows customers to communicate directly with the furniture business using pre-filled WhatsApp conversations.
Engineering Challenges
Challenge 01
Customers needed a simple way to request custom furniture using inspiration images while still providing structured information that could support future order management.
I designed a guided request workflow that combines image uploads with descriptive project details, creating a consistent data structure for future processing.
The solution balances customer flexibility with a scalable backend design that can support quotations, order tracking, and administration.
Challenge 02
Although the current scope is a single furniture store, the data model needed to support future features without major redesign.
I modeled the database using PostgreSQL and Prisma ORM with normalized relationships that can accommodate authentication, inventory, and order management.
The application can evolve without significant database restructuring.
Challenge 03
Furniture images and customer reference photos require secure storage and efficient delivery while keeping the application lightweight.
I integrated Cloudinary to handle uploads, storage, optimization, and delivery.
Media management is reliable, scalable, and independent of the application server.
Challenge 04
The application is still under active development, so today's implementation must support tomorrow's requirements.
I adopted a modular architecture using reusable components, Next.js Route Handlers, Prisma ORM, and Docker.
New features can be added with minimal impact on the existing codebase.
Lessons Learned
This project significantly strengthened my understanding of full-stack system design, especially how frontend interfaces connect with backend APIs and databases in a real-world application.
I gained deeper experience designing relational database schemas using Prisma ORM and learned how early schema decisions impact scalability and future feature development.
Working with Next.js API Route Handlers improved my ability to structure backend logic in a modular and maintainable way within a full-stack framework.
Integrating Cloudinary taught me how external services can be effectively used to offload infrastructure concerns like media storage and optimization.
Containerizing the application with Docker helped me understand the importance of consistent development environments across teams and deployment pipelines.
What's Next
This project is actively evolving. The roadmap below highlights the features planned as development continues.
Developed a modern customer-facing interface for browsing products and submitting custom furniture requests.
Established the backend architecture using Next.js Route Handlers, Prisma ORM, and PostgreSQL.
Integrated secure cloud-based image uploads and optimized media delivery.
Allow customers to create accounts and manage their furniture requests.
Manage products, customer requests, and website content from a centralized dashboard.
Enable secure online payments and deposit processing through MPesa.
Provide customers with real-time updates on the progress of their orders.