A small chat app written in TypeScript using React and NextJS frameworks with NodeJS and Microsoft SQL Server in the backend.
Features user registration and authentication, chat rooms with real time communication using web sockets.
The user interface is written using Tailwind CSS and Lucide Icons with primitive components using Radix UI for accessibility.
Authentication is made using NextAuth with encrypted credentials stored in the SQL database using Bcrypt.
Persistent data is stored using Microsoft SQL Server from the API using Node MSSQL and secured using sessions.
Received data is fetched and cached from the API using SWR and sent data is validated in both client and API using Zod.
Real time communication chat is solved with authenticated web sockets using Pusher Channels from the API.