======= 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
To run the application using Docker, follow these steps:
-
Ensure Docker is installed on your system. If not, download and install Docker from here.
-
Navigate to the directory containing the
docker-compose.yml
file. -
Build and run the Docker containers:
docker-compose up --build
To stop the containers, run:
docker-compose down
.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.