Shopping Assistant, kullanıcıların alışveriş deneyimini geliştirmek için tasarlanmış, yapay zeka destekli bir e-ticaret asistanı uygulamasıdır. Bu proje, modern web teknolojileri ve mikroservis mimarisi kullanılarak geliştirilmiştir.
- ✨ Yapay zeka destekli alışveriş asistanı
- 🔒 Kullanıcı ve admin yetkilendirme sistemi
- 🌐 Mikroservis mimarisi
- 💬 Gerçek zamanlı chatbot desteği
- 🔍 Akıllı ürün arama ve önerme sistemi
- 🛍️ Kullanıcı dostu arayüz
- React.js
- Vite
- React Router DOM
- Bootstrap
- Axios
- Node.js
- Express.js
- MongoDB
- JWT Authentication
- API Gateway
- Mikroservis Mimarisi
- Flask
- NLTK
- Beautiful Soup
- Selenium
- Transformers
- Node.js (v18 veya üzeri)
- Python (3.8 veya üzeri)
- MongoDB
- Chrome WebDriver (web crawler için)
- Projeyi klonlayın:
git clone https://github.com/alihepi/ShoppingAssistant.git
cd shopping-assistant- Gerekli paketleri yükleyin:
npm install- Python sanal ortamını oluşturun ve gerekli paketleri yükleyin:
cd python
python -m venv venv
source venv/bin/activate # Linux/macOS
# veya
venv\Scripts\activate # Windows
pip install -r requirements.txt- Gerekli .env dosyalarını oluşturun:
Backend servisleri için (.env dosyaları admin-service ve user-service klasörlerinde):
MONGO_URI=mongodb://localhost:27017/shopping-assistant
PORT=5001 # user-service için
PORT=5002 # admin-service için
JWT_SECRET=your_jwt_secretTüm servisleri tek bir komutla başlatmak için:
npm startBu komut aşağıdaki servisleri başlatacaktır:
- Frontend (http://localhost:5173)
- API Gateway (http://localhost:5000)
- User Service (http://localhost:5001)
- Admin Service (http://localhost:5002)
- Chatbot Service (http://localhost:5025)
SHOPPINGASSISTANT/
├── backend/
│ ├── admin-service/ # Admin yönetim servisi
│ ├── gateway/ # API Gateway
│ ├── user-service/ # Kullanıcı yönetim servisi
│ └── package.json
├── frontend/
│ ├── src/
│ ├── public/
│ └── package.json
├── python/
│ ├── chatbot_api.py # Chatbot API servisi
│ ├── chatbot.py # Chatbot mantığı
│ └── web_crawler_v9.3.py # Ürün verileri toplama
└── package.json
- POST /api/users/register - Yeni kullanıcı kaydı
- POST /api/users/login - Kullanıcı girişi
- PUT /api/users/:id - Kullanıcı bilgilerini güncelleme
- DELETE /api/users/:id - Kullanıcı silme
- POST /api/admins/register - Yeni admin kaydı
- POST /api/admins/login - Admin girişi
- PUT /api/admins/:id - Admin bilgilerini güncelleme
- DELETE /api/admins/:id - Admin silme
- POST /api/chatbot - Chatbot ile etkileşim
- Frontend geliştirmesi için:
cd frontend
npm run dev- Backend servislerini ayrı ayrı çalıştırmak için:
cd backend/admin-service
npm run dev
cd backend/user-service
npm run dev
cd backend/gateway
npm run dev- Chatbot servisini çalıştırmak için:
cd python
python chatbot_api.pyWeb crawler'ı çalıştırmak için:
cd python
python web_crawler_v9.3.pyCrawler çalıştırıldığında:
- Base URL girmeniz istenecektir
- Otomatik olarak ürünleri tarayacak ve JSON formatında kaydedecektir
- Progress durumu console'da gösterilecektir
- Fork'layın
- Feature branch'i oluşturun (
git checkout -b feature/amazing-feature) - Değişikliklerinizi commit edin (
git commit -m 'Add some amazing feature') - Branch'inizi push edin (
git push origin feature/amazing-feature) - Pull Request oluşturun
Bu proje MIT lisansı altında lisanslanmıştır. Daha fazla bilgi için LICENSE dosyasına bakın.
Ali Mutlu - @alihappy_ - aliimutlu@hotmail.com
Project Link: https://github.com/alihepi/ShoppingAssistant