Skip to content

Simple chat app built with React, ChakraUI & Nest.js

License

Notifications You must be signed in to change notification settings

Sph3ricalPeter/chattr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chattr

A simple chat app built with React, ChakraUI & Nest.js


Features

  • anonymous live chat preview
  • user accounts
  • live chat participation for users

Deploy

Deploy on Railway

Run Locally

Pre-requisites

# PostgreSQL DB
cd chattr-api && pnpm i
cd prisma && docker-compose up -d
cd .. && prisma generate && prisma migrate dev --name init

# API
pnpm nest start

# UI
cd chattr-ui && pnpm i && pnpm vite dev

Repo Structure

chattr-ui/ - React frontend, ChakraUI, Socket.io & React Router

  • main.tsx - entry point
  • Auth.tsx - authentication context
  • SocketContext.tsx - socket.io context
  • App.tsx, Chat.tsx, Comment.tsx - app layout & login, signup modals, chat, comment components
  • Api.ts - API client

chattr-api/ - Nest.js backend, Prisma, Socket.io &

  • main.ts - entry point, setup
  • http-ex.filter.ts - HTTP exception filter
  • modules
    • auth - authentication module
    • users - user module
    • messages - message module, websocket gateway