A real-time chat application built with TypeScript, Node.js, and Prisma. This application allows users to communicate in real-time, manage chat rooms, and store messages in a PostgreSQL database.
- Real-time messaging
- User authentication
- Chat room management
- Persistent message storage
- Node.js: JavaScript runtime for building server-side applications.
- TypeScript: A superset of JavaScript that adds static types.
- Prisma: An ORM for Node.js and TypeScript that simplifies database access.
- PostgreSQL: A powerful, open-source relational database system.
- Express: A web framework for Node.js.
- Socket.IO: A library for real-time web applications.
-
Clone the repository:
git clone https://github.com/yourusername/chat-app.git cd chat-app
-
Install dependencies:
npm install
-
Set up your PostgreSQL database:
- Install PostgreSQL on your machine or use a cloud service.
- Create a new database for the chat application.
-
Set up your environment variables. Create a
.env
file in the root directory and add your configuration:DATABASE_URL=postgresql://username:password@localhost:5432/your_database_name NODE_ENV=development
-
Run database migrations (if applicable):
npx prisma migrate dev
To start the development server, run:
npm run dev
The application will be available at http://localhost:3000
.
Contributions are welcome! Please open an issue or submit a pull request.
- Fork the repository.
- Create your feature branch:
git checkout -b feature/YourFeature
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/YourFeature
- Open a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.