A full-stack classified-ads marketplace built with ASP.NET Core 10 and React 18.
Users can post, search, and reserve second-hand items. Sellers get real-time notifications; buyers can message, watchlist, and review.
Repo
Description
Backend
ASP.NET Core 10 · Clean Architecture · REST API
Frontend
React 18 · Vite · Redux Toolkit · Material UI
SRS Requirements Progress
#
Requirement
Status
FR-01
User Registration
✅ Implemented
FR-02
Email Verification
✅ Implemented
FR-03
Login / JWT Authentication
✅ Implemented
FR-04
Password Reset
✅ Implemented
FR-05
User Profile Management
✅ Implemented
FR-06
Create Advertisement
✅ Implemented
FR-07
Update / Manage Advertisement
✅ Implemented
FR-08
Search Advertisements (+ Geo)
✅ Implemented
FR-09
Browse Latest / Top
✅ Implemented
FR-10
Advertisement Detail + View Count
✅ Implemented
FR-11
Photo Upload (Cloudinary)
✅ Implemented
FR-12
Reservation System (Redis TTL)
✅ Implemented
FR-13
Messaging / Inbox
✅ Implemented
FR-14
Watchlist
✅ Implemented
FR-15
Notifications + SignalR Real-time
✅ Implemented
FR-16
Reviews / Seller Profile
✅ Implemented
—
Admin Panel (Phase 1 + 2)
✅ Implemented
—
Support Tickets
✅ Implemented
NFR-01
Performance (Redis Cache, Indexes)
✅ Implemented
NFR-02
Scalability (Stateless JWT, Redis)
✅ Implemented
NFR-03
Data Integrity (UoW, Constraints)
✅ Implemented
NFR-04
Security (JWT, Rate Limiting, HTTPS)
✅ Implemented
NFR-05
Availability (Health Checks)
✅ Implemented
NFR-06
Maintainability (Clean Architecture)
✅ Implemented
All 24 SRS requirements: ✅ Complete
┌─────────────────────────────────────────────┐
│ React 18 Frontend │
│ Redux Toolkit · Axios · Material UI v6 │
└───────────────────┬─────────────────────────┘
│ REST + SignalR
┌───────────────────▼─────────────────────────┐
│ ASP.NET Core 10 API │
│ Clean Architecture (Domain / App / │
│ Infrastructure / Presentation) │
│ JWT Auth · SignalR · Rate Limiting │
│ Health Checks (/health) │
└──────┬──────────────────┬───────────────────┘
│ │
┌──────▼──────┐ ┌──────▼──────┐
│ PostgreSQL │ │ Redis │
│ EF Core 10 │ │ Cache·Lock │
│ Migrations │ │ GEO·SignalR │
└─────────────┘ └─────────────┘
│
┌──────▼──────┐
│ Cloudinary │
│ (Photos) │
└─────────────┘
Branch
Status
Description
Dev_1
✅ Active
Main development branch — 42 commits, all features merged
feature/remaining-items
✅ Merged
Rate limiting, health checks, SignalR notifications
feature/admin-panel-phase2
✅ Merged
Review management, enhanced admin
feature/critical-fixes
✅ Merged
HTTPS, admin guard, geo count, email URLs
Geo-based search — Redis GEOSEARCH with radius filter (5–100 km)
Distributed reservations — Redis SET NX PX lock prevents double-booking; 10-min TTL auto-cancels via keyspace events
Real-time notifications — SignalR hub pushes ReceiveNotification events instantly when listings are reserved or sold
Redis cache — 4 cache paths with ±15% TTL jitter for stampede protection
Rate limiting — 10 req/min per IP on auth endpoints
Health endpoint — GET /health checks PostgreSQL and Redis connectivity
Admin panel — user management, advertisement moderation, support tickets, review management, audit log