Skip to content
@NovelNestHQ

NovelNestHQ

NovelNest is an online bookstore platform designed to help book lovers discover, exchange, and manage their book collections.
  • India

📚 NovelNest – A Community-Powered Books Marketplace

Welcome to the official GitHub Organization of NovelNest, a microservices-based platform for book lovers to discover, buy, sell, and manage physical books.

This platform demonstrates scalable service engineering using modern web development, containerization, and orchestration technologies.

🧱 Architecture at a Glance

NovelNest is built using a modular, microservices-based architecture. Each service is maintained in its own repository and communicates via both synchronous REST APIs and asynchronous message queues using RabbitMQ.

🔧 Core Services

Service Responsibilities Tech Stack
User Service Authentication (SuperTokens), user profile & purchase history Node.js, TypeScript, PostgreSQL
Catalog Service Book catalog browsing & search (read-optimized) Node.js, TypeScript, MongoDB
Inventory Service Manage book listings & stock (write-optimized) Node.js, TypeScript, PostgreSQL
Order Service Order lifecycle management, seller-buyer coordination Node.js, TypeScript, PostgreSQL
Frontend UI React-based SPA interfacing with Kong API Gateway React, TypeScript, NGINX

🌐 Infrastructure

  • Kong API Gateway: Manages routing, security, and service exposure
  • RabbitMQ: Enables asynchronous inter-service communication
  • Kubernetes (Minikube): Manages container orchestration and deployments
  • Quay.io: Hosts Docker container images for all services

📂 GitHub Repositories

Component Repository Link
User Service user-service
Catalog Service catalog-service
Inventory Service inventory-service
Order Service order-service
Frontend UI frontend
Kubernetes Manifests k8s-manifests

📜 Documentation & Demonstrations


🖼️ System Design Overview

System Architecture Diagram


🚀 Getting Started

To run the full application locally or on Minikube, refer to the k8s-manifests README for deployment steps using:

  • deploy-all.sh: Deploys all services in order
  • kubectl apply -f <service>: Apply individual manifests
  • kubectl port-forward: Access UI, RabbitMQ dashboard, or Kong

🛠 Technologies Used

  • Microservices: Node.js + TypeScript
  • API Gateway: Kong
  • Message Queue: RabbitMQ
  • Databases: PostgreSQL + MongoDB
  • Frontend: React + Vite + TailwindCSS
  • Orchestration: Docker + Kubernetes (Minikube)
  • Auth: SuperTokens
  • CI/CD (optional): GitHub Actions + Quay.io Registry

💡 For more details, walkthroughs, and advanced Kubernetes deployments, refer to the full 📘 technical document.


Popular repositories Loading

  1. user-service user-service Public

    TypeScript

  2. inventory-service inventory-service Public

    TypeScript

  3. catalog-service catalog-service Public

    TypeScript

  4. order-service order-service Public

    TypeScript

  5. frontend frontend Public

    TypeScript

  6. k8s-manifests k8s-manifests Public

    Shell

Repositories

Showing 7 of 7 repositories

Top languages

Loading…

Most used topics

Loading…