Skip to main content

Welcome to Kioto Teteria Backend

Kioto Teteria Backend is a production-ready NestJS REST API designed for managing a modern tea shop. Built with TypeScript, Prisma ORM, and PostgreSQL, it provides a robust foundation for e-commerce operations.

Overview

This backend service powers a complete tea shop experience, handling everything from product catalog management to order processing and customer engagement through newsletter subscriptions.

Quick Start

Get up and running in minutes with our step-by-step guide

API Reference

Explore all available endpoints and their usage

Authentication

Learn about JWT-based authentication and security

Database Schema

Understand the data models and relationships

Key Features

Secure Authentication

JWT-based authentication with role-based access control for admin operations

Product Management

Complete CRUD operations for products with category organization and slug-based URLs

Order Processing

Full order lifecycle management with status tracking (pending, paid, cancelled)

Newsletter System

Built-in newsletter subscription management for customer engagement

Database Powered

Prisma ORM with PostgreSQL for reliable data persistence

Request Validation

Automatic validation and transformation of request data with class-validator

API Endpoints

The API is organized into logical resource groups:
  • Authentication: Admin login and JWT token generation
  • Products: Browse, search, and manage tea products
  • Categories: Organize products into categories
  • Orders: Create and track customer orders
  • Newsletter: Manage email subscriptions

Technology Stack

  • NestJS 11: Progressive Node.js framework with TypeScript support
  • Express: Fast, unopinionated web framework
  • TypeScript 5.7: Type-safe development experience
  • PostgreSQL: Reliable relational database
  • Prisma 7.4: Next-generation ORM with type safety
  • @prisma/adapter-pg: PostgreSQL adapter for optimal performance
  • Passport JWT: JWT strategy for authentication
  • bcrypt: Secure password hashing
  • class-validator: Runtime validation decorators
  • Jest: Testing framework with coverage reporting
  • ESLint: Code quality and consistency
  • Prettier: Code formatting
  • SonarQube: Code quality analysis

Next Steps

1

Installation

Set up your development environment and install dependenciesView installation guide →
2

Quick Start

Get the API running locally in minutesFollow the quickstart →
3

Configure Environment

Set up database connection and environment variablesConfigure your setup →
4

Explore the API

Start making requests and building your applicationBrowse API endpoints →

Support & Community

GitHub Repository

View source code, report issues, and contribute to the project

Build docs developers (and LLMs) love