Bu proje, MongoDB Atlas ve Socket.IO kullanarak oluşturulmuş gerçek zamanlı bir sohbet uygulaması için RESTful API'dir.
- Kullanıcı kimlik doğrulama (kayıt, giriş, çıkış)
- Gerçek zamanlı mesajlaşma
- Tekli ve grup sohbetleri
- Kullanıcı çevrimiçi/çevrimdışı durumu
- Mesaj okundu bildirimleri
- Yazıyor göstergesi
- Depoyu klonlayın:
git clone <repo-url>
cd ChatappAPI
- Bağımlılıkları yükleyin:
npm install
.envdosyasını oluşturun:
MONGODB_URI=mongodb+srv://<kullanıcı_adı>:<şifre>@<cluster_url>/chatapp?retryWrites=true&w=majority
PORT=5000
JWT_SECRET=your_jwt_secret_key_here
NODE_ENV=development
- Uygulamayı başlatın:
# Geliştirme modu
npm run dev
# Üretim modu
npm start
POST /api/users- Yeni kullanıcı oluşturPOST /api/users/login- Kullanıcı girişiPOST /api/users/logout- Kullanıcı çıkışıGET /api/users- Kullanıcıları araGET /api/users/profile- Kullanıcı profilini getir
POST /api/chats- Tekli sohbet oluştur/getirGET /api/chats- Tüm sohbetleri getirPOST /api/chats/group- Grup sohbeti oluşturPUT /api/chats/group/:chatId- Grup adını güncellePUT /api/chats/group/:chatId/add- Gruba kullanıcı eklePUT /api/chats/group/:chatId/remove- Gruptan kullanıcı çıkar
POST /api/messages- Mesaj gönderGET /api/messages/:chatId- Sohbetteki tüm mesajları getirPUT /api/messages/:id/read- Mesajı okundu olarak işaretle
connected- Bağlantı kurulduuser-online- Kullanıcı çevrimiçiuser-offline- Kullanıcı çevrimdışıtyping- Kullanıcı yazıyorstop-typing- Kullanıcı yazmayı durdurdumessage-received- Yeni mesaj geldi
setup- Kullanıcı kurulumujoin-chat- Sohbete katıltyping- Yazıyor bildirstop-typing- Yazmayı durdurma bildirnew-message- Yeni mesaj gönder
- Node.js
- Express.js
- MongoDB (Atlas)
- Socket.IO
- JWT Kimlik Doğrulama