A simple real-time messaging application built with TypeScript, Express, React, and MongoDB.
For a more comprehensive list of technologies used, see below.
- Node.js (v18 or higher)
- npm
- MongoDB Atlas account
git clone https://github.com/ganznz/mini-messaging-app.git
cd mini-messaging-app
npm install
Create .env
in the server directory and paste the following:
NODE_ENV=dev ## dev | prod
MONGODB_CONNECTION_CREDENTIALS=<db_username>:<db_password>
MONGODB_CLUSTER_NAME=<cluster_name> ## e.g. if Cluster0, then "cluster0", if My Cluster then "my-cluster"
CLIENT_URL_DEV="http://localhost:5173" ## dev client url
CLIENT_URL_PROD=<your_production_url> ## prod client url
Create .env
in the client directory and paste the following:
VITE_ENV=dev ## dev | prod
VITE_API_URL_DEV=http://localhost:8080 ## express server dev url. requests redirected here
VITE_API_URL_PROD=<your_production_url> ## prod server url
npm run dev-server
npm run dev-client
- TypeScript
- Express
- Socket.IO
- MongoDB
- React
- Tailwind CSS
- Vite
- shadcn components
- lucide icons
- Zod (form schema validation)