Skip to content

Muimi-Chat/chat-service

Repository files navigation

Chat Service

======= This repository contains backend services and APIs for chat-related functionalities in Muimi-Chat.

Services provided:

  • Chat with GPT (OpenAI)
  • Chat Tokens
  • Keep Track of Chat Conversations, History

Running the Application with Docker

To run the application using Docker, follow these steps:

  1. Ensure Docker is installed on your system. If not, download and install Docker from here.

  2. Navigate to the directory containing the docker-compose.yml file.

  3. Build and run the Docker containers:

    docker-compose up --build

    To stop the containers, run:

    docker-compose down

Directory Structure

.github/workflows - Click to expand/collapse
  • deploy-vm.yml: GitHub Actions workflow for deploying to VM.
src - Click to expand/collapse
api - Click to expand/collapse
  • consumers: Modules for consuming external services.
  • controllers: Logic for handling API requests.
  • helpers: Helper functions and utilities.
  • interfaces: TypeScript interfaces.
  • repositories: Repository layer for interacting with databases or external services.
  • routes: Routing configuration for API endpoints.
  • services: Business logic services.
  • validations: Input validation logic.
  • configs: Configuration files.
configs - Click to expand/collapse
  • chatInputLimitation.ts: Configuration for chat input limitations.
  • cryptorConfig.ts: Configuration for cryptographic operations.
  • redisConnectionString.ts: Configuration for Redis connection string.
  • titleCreatorBotModel.ts: Model for title creator bot.
  • usableBotModels.ts: Configuration for usable bot models.
  • userServiceApiConfig.ts: Configuration for user service API.
  • db.ts: Database configuration script.
  • index.ts: Entry point of the application.
  • schema.ts: Database schema definition.
Root files and Configuration - Click to expand/collapse
  • .env.example: Example environment variable configuration file.
  • .gitattributes: Git attributes file.
  • .gitignore: Git ignore file.
  • Dockerfile: Dockerfile for containerization.
  • README.md: This file, providing an overview of the repository structure and contents.
  • docker-compose-prod.yml: Docker Compose file for production environment.
  • docker-compose.yml: Docker Compose file for development environment.
  • drizzle.config.ts: Drizzle configuration.
  • migrate.ts: Migration script.
  • migration-helper.sh: Script to assist with migrations.
  • nodemon.json: Nodemon configuration.
  • package-lock.json: npm package lock file.
  • package.json: npm package configuration.
  • tsconfig.json: TypeScript configuration.
>>>>>>> ded14bf72deebe09692f62f0a9a2626d4d0540b2

About

Backend API Routes for Chatting with LLM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages