How vardan000/auctionplatform works
AuctionPlatform is an in-development auction API. Users register or log in for JWT authentication; authenticated sellers create lots, users browse active lots, and authenticated bidders place bids. Controllers send commands and queries through MediatR to application handlers, which use repositories and domain entities for auction behavior. Infrastructure supplies EF Core repositories and JWT generation. The README also plans real-time bidding and fuller lot CRUD, but those features are not represented as implemented components here; wiring is inferred only where supported by sampled source and the tree.
Main entry points: Auth Auth handlers · Controllers API controllers · Lots Lot handlers · PlaceBidCommandHandler.cs Bid handler
Components 18
Web API
- API controllers
AuctionPlatform.WebApi/Controllers - MediatR
Application workflows
- Auth handlers
AuctionPlatform.Application/Auth - Lot handlers
AuctionPlatform.Application/Lots - Bid handler
AuctionPlatform.Application/Bids/PlaceBidCommandHandler.cs - User repository contract
AuctionPlatform.Application/Interfaces/IUserRepository.cs - Lot repository contract
AuctionPlatform.Application/Interfaces/ILotRepository.cs - Token service contract
AuctionPlatform.Application/Interfaces/ITokenService.cs
Auction domain
- User entity
AuctionPlatform.Domain/User.cs - Lot entity
AuctionPlatform.Domain/Lot.cs - Bid entity
AuctionPlatform.Domain/Bid.cs
Infrastructure
- User repository
AuctionPlatform.Infrastructure/UserRepository.cs - Lot repository
AuctionPlatform.Infrastructure/LotRepository.cs - JWT token service
AuctionPlatform.Infrastructure/Services/JwtTokenService.cs - EF Core context
AuctionPlatform.Infrastructure/AppDbContext.cs
Other components
- API client
- SQL Server
- JWT configuration
AuctionPlatform.WebApi/appsettings.json
Connections 23
- API client → API controllers: sends HTTP
- API controllers → MediatR: sends requests
- MediatR → Auth handlers: dispatches auth
- MediatR → Lot handlers: dispatches lots
- MediatR → Bid handler: dispatches bids
- Auth handlers → User repository contract: uses
- Auth handlers → Token service contract: uses
- Lot handlers → Lot repository contract: uses
- Bid handler → Lot repository contract: uses
- Auth handlers → User entity: creates
- Auth handlers → User entity: verifies
- Bid handler → Lot entity: places bid
- Lot entity → Bid entity: records
- User repository contract → User repository: implemented by
- Lot repository contract → Lot repository: implemented by
- Token service contract → JWT token service: implemented by
- User repository → EF Core context: queries and adds
- Lot repository → EF Core context: queries and saves
- EF Core context → SQL Server: reads and writes
- JWT token service → JWT configuration: reads settings
- Auth handlers → JWT token service: generates token
- API controllers → API client: returns HTTP
- Lot handlers → Lot entity: maps lot data