This is a realtime chat application built with NestJS, React and Socket.io. Nest provides support out of the box for websockets via Socket.io while we're using a Socket.io client in the React application. Users can login and create or join existing chat rooms!
- Chat websocket gateway.
- Object schema validation via pipes with zod.
- Attribute-based access control authorization via guards with CASL.
- Socket.io client to interact with the server through websockets.
- Client/server state management with Tanstack Query.
- CSS styling with tailwindcss.
- Client-side routing with Tanstack Location.
- Forms with react-hook-form.
- Object schema validation for events, forms, and more with zod.
$ yarn
# start client and server in development mode
$ yarn dev
# build client and server for production
$ yarn build
# start server in production
$ yarn start:prodserver