Welcome to the Full Stack Chat Application! This project provides a simple yet powerful messaging system with backend and frontend components.
- Create conversations between users
- Send and receive messages in real-time
- Delete conversations and messages
-
Backend:
- Node.js
- Express.js
- Prisma ORM
- PostgreSQL
- Socket.io (for real-time messaging)
-
Frontend:
- React.js
- Tailwind CSS
- Daisy UI
- Socket.io (for real-time updates)
Before you begin, ensure you have met the following requirements:
- Node.js installed
- PostgreSQL database set up
- Prisma CLI installed globally (
npm install -g prisma
)
-
Clone the repository:
git clone git@github.com:ilham-saleh/full-stack-project.git
-
cd full-stack-chat-app
-
cd backend
npm install
cd frontend
npm install
-
Set up your environment variables:
Create a .env file in the backend directory with the following content: DATABASE_URL="your_postgresql_database_url_here"
Replace "your_postgresql_database_url_here" with the actual URL of your PostgreSQL database.
- Migrate and seed the database:
cd backend
npx prisma migrate dev --name init
npx prisma db seed --preview-feature
-
cd backend
npm start
-
cd frontend
npm start
If you would like to contribute to the project, follow these steps:
- Fork the repository.
- Create a new branch for your feature: git checkout -b
feature-name
. - Commit your changes:
git commit -m 'Add some feature'
. - Push to the branch:
git push origin feature-name
. - Submit a
pull request
.