Skip to content

Repository files navigation

facile FACILE logo

FACILE is an AI-powered, voice-first shopping platform built on a microservices architecture. Instead of typing, scrolling, and filtering, users can simply speak — search for products, add items to their cart, and check out, all through natural voice commands. Under the hood, a local Whisper-based speech pipeline turns spoken queries into product searches, while a set of independent backend services handle authentication, inventory, cart & orders, and payments — all fronted by a fast, modern Next.js interface.

Next.js React TypeScript TailwindCSS Java Spring Boot Node.js PostgreSQL MongoDB Redis Supabase Docker

🔗 Live Demo: Coming Soon

🔗 Live Demo: Coming soon


📖 Table of Contents


✨ Features

  • 🎙️ Voice-Powered Shopping — search for and add products to your cart using natural speech, powered by a local Whisper speech-to-text pipeline
  • 🔐 Secure Authentication — dedicated auth service for user sign-up, login, and session handling
  • 🛍️ Product Catalog & Inventory — browse and search a live product catalog backed by a dedicated inventory service
  • 🛒 Cart & Orders — add-to-cart, order creation, and order history via a Redis-backed cart and MongoDB-backed order service
  • 💳 Payments & Notifications — dedicated service for handling payment processing and user notifications
  • Modern, Responsive UI — built with Next.js and Tailwind CSS, with smooth animations via Framer Motion
  • 🧩 Microservices Architecture — independently deployable services for auth, inventory, orders/cart, and payments, orchestrated together for local development

🎙 How It Works

  1. Speak your request — e.g. "Show me fitted shirts" or "Add this to my cart"
  2. Speech-to-text — a local Whisper model transcribes the voice input
  3. Understanding intent — the transcribed query is mapped to a product search, cart action, or navigation command
  4. Instant results — the inventory service returns matching products, rendered in the Next.js UI in real time

📸 Product Preview

Homepage Home
FACILE homepage FACILE home page
Product Discovery Login
FACILE product discovery FACILE login page
Products Ratings
FACILE products page FACILE product ratings
Cart Checkout
FACILE shopping cart FACILE checkout page
Cateogaries
FACILE subscription page

🛠 Tech Stack

🎨 Frontend

  • Next.js — React framework for the storefront UI
  • React — component-based UI
  • TypeScript — type-safe application code
  • Tailwind CSS — utility-first styling
  • Framer Motion — animations and transitions
  • Swiper — carousels for product browsing
  • Axios — HTTP client for service communication
  • Jimp — image processing for product assets

🧠 Voice / AI

  • Local Whisper-based speech-to-text pipeline for voice search and commands

⚙️ Backend — Microservices

  • auth-user-service — Java / Spring Boot — authentication & user management
  • order-cart-service — Java / Spring Boot — cart and order management (MongoDB, Redis)
  • payment-notification-service — Java / Spring Boot — payments and notifications
  • product-inventory-service — Node.js — product catalog & inventory

🗄️ Data Layer

  • MongoDB — cart, order, and checkout-saga data
  • PostgreSQL — relational data
  • Supabase — managed Postgres & backend services

☁️ Tooling & Deployment

  • Docker Compose — local orchestration of Mongo, Redis, and Postgres
  • concurrently — run frontend and all backend services together in dev
  • Git & GitHub — version control and source hosting

📁 Project Structure

```text FACILE/ ├── FRONTEND/ # Next.js storefront (voice-powered UI) ├── auth-user-service/ # Spring Boot — authentication & users ├── order-cart-service/ # Spring Boot — cart & orders (MongoDB, Redis) ├── payment-notification-service/ # Spring Boot — payments & notifications ├── product-inventory-service/ # Node.js — product catalog & inventory ├── scripts/ # Dev automation (frontend/inventory launchers, Whisper setup) ├── .vscode/ ├── docker-compose.yml # MongoDB, Redis, PostgreSQL for local dev ├── supabase_migration.sql ├── product_images_migration.sql ├── review_rating_migration.sql ├── package.json # Root scripts to run the whole stack together └── README.md ```


🚀 Getting Started

Prerequisites

  • Node.js (v18+ recommended)
  • Java (17+) & Maven (via the included `mvnw` wrapper)
  • Docker (for MongoDB, Redis, and PostgreSQL)
  • npm

Installation

  1. Clone the repository ```bash git clone https://github.com/Aash1B/FACILE.git cd FACILE ```

  2. Install root dependencies ```bash npm install ```

  3. Set up environment variables Add the required `.env` files for the frontend and each backend service (database URLs, Supabase keys, service ports, etc.).

  4. Set up local voice support ```bash npm run setup:voice ```

  5. Start the databases ```bash npm run dev:databases ```

  6. Run the full stack (frontend + all backend services) ```bash npm run dev ```

    Or run pieces individually: ```bash npm run dev:frontend # Next.js storefront npm run dev:backend-auth # Auth service npm run dev:backend-order # Order & cart service npm run dev:backend-payment # Payment & notification service npm run dev:backend-inventory # Inventory service ```

  7. Open the app in your browser at the port shown in your frontend logs.


🗺 Roadmap

  • Multi-language voice commands
  • Conversational follow-up queries (e.g. "show me a cheaper one")
  • Order tracking via voice
  • Mobile app support

🤝 Contributing

Contributions are welcome!

  1. Fork the repo
  2. Create your feature branch (`git checkout -b feature/amazing-feature`)
  3. Commit your changes (`git commit -m 'Add amazing feature'`)
  4. Push to the branch (`git push origin feature/amazing-feature`)
  5. Open a Pull Request

📬 Contact

This project was developed by:

For any queries, feel free to open an issue in this repository.


Made with 🎙️ and a lot of ☕

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages