Modern ve kullanıcı dostu bir e-ticaret platformu. React ve .NET Core kullanılarak geliştirilmiştir.
- ✅ Kullanıcı kaydı ve girişi
- ✅ Ürün arama ve filtreleme
- ✅ Kategori bazlı ürün listeleme
- ✅ Sepet yönetimi
- ✅ Favori ürünler
- ✅ Sipariş takibi
- ✅ Profil yönetimi
- ✅ Adres yönetimi
- ✅ Dashboard
- ✅ Ürün yönetimi
- ✅ Kategori yönetimi
- ✅ Kullanıcı yönetimi
- ✅ Sipariş yönetimi
- ✅ İstatistikler
- ✅ JWT tabanlı kimlik doğrulama
- ✅ Rate limiting
- ✅ CORS yapılandırması
- ✅ Error handling
- ✅ Type safety
- ✅ Responsive design
- ✅ Modern UI/UX
- .NET 9 - Ana framework
- Entity Framework Core - ORM
- SQLite - Veritabanı
- JWT - Kimlik doğrulama
- BCrypt - Şifre hashleme
- AutoMapper - Object mapping
- React 17 - UI framework
- TypeScript - Type safety
- Tailwind CSS - Styling
- React Router - Routing
- Axios - HTTP client
- Framer Motion - Animations
- React Hook Form - Form handling
- .NET 9 SDK
- Node.js 18+
- npm veya yarn
cd backend
dotnet restore
dotnet build
dotnet run --project Sepetza.API
Backend varsayılan olarak http://localhost:5205
adresinde çalışacaktır.
cd frontend
npm install
npm start
Frontend varsayılan olarak http://localhost:3000
adresinde çalışacaktır.
{
"JwtSettings": {
"SecretKey": "YourSecretKeyHere",
"Issuer": "Sepetza",
"Audience": "SepetzaUsers",
"ExpirationInMinutes": 1440
},
"AllowedOrigins": [
"https://sepetza.com",
"https://www.sepetza.com"
]
}
REACT_APP_API_URL=http://localhost:5205/api
REACT_APP_ENV=development
- ✅ JWT token expiration
- ✅ Rate limiting
- ✅ CORS policy
- ✅ Input validation
- ✅ SQL injection koruması
- ✅ XSS koruması
- ✅ CSRF koruması
- ✅ Password hashing (BCrypt)
- Email: admin@sepetza.com
- Şifre: Admin123!
Sepetza/
├── backend/
│ ├── Sepetza.API/ # Web API
│ ├── Sepetza.Business/ # Business logic
│ ├── Sepetza.Core/ # Entities & DTOs
│ └── Sepetza.Data/ # Data access
└── frontend/
├── src/
│ ├── components/ # React components
│ ├── pages/ # Page components
│ ├── services/ # API services
│ ├── contexts/ # React contexts
│ ├── types/ # TypeScript types
│ └── utils/ # Utility functions
└── public/ # Static files
- ✅ Using statement eksiklikleri giderildi
- ✅ JWT role mapping sorunu çözüldü
- ✅ API response tutarsızlığı düzeltildi
- ✅ Environment variables kullanımı eklendi
- ✅ Type safety iyileştirildi
- ✅ JWT secret key güvenliği artırıldı
- ✅ CORS policy production için yapılandırıldı
- ✅ Rate limiting sabitleri optimize edildi
- ✅ Error handling geliştirildi
- ✅ ErrorBoundary component eklendi
- ✅ Centralized config sistemi oluşturuldu
- ✅ Type definitions iyileştirildi
- ✅ Import/export tutarlılığı sağlandı
cd backend
dotnet publish -c Release -o ./publish
cd frontend
npm run build
docker-compose up -d
API dokümantasyonu Swagger UI ile sağlanmaktadır:
- Development:
http://localhost:5205/swagger
- Production:
https://yourdomain.com/swagger
- Fork yapın
- Feature branch oluşturun (
git checkout -b feature/amazing-feature
) - Commit yapın (
git commit -m 'Add amazing feature'
) - Push yapın (
git push origin feature/amazing-feature
) - Pull Request oluşturun
Bu proje MIT lisansı altında lisanslanmıştır. Detaylar için LICENSE
dosyasına bakın.
- Proje Sahibi: [Your Name]
- Email: [your.email@example.com]
- GitHub: [https://github.com/yourusername]
Bu projeyi geliştirirken kullanılan tüm açık kaynak kütüphanelere teşekkürler.