{"repo":"pekalam/auctionhouse","free":true,"listed":false,"github":"https://github.com/pekalam/auctionhouse","clone":"git clone https://github.com/pekalam/auctionhouse.git","description":"Web auction platform implemented with CQRS and event sourcing patterns Built with ASP.NET Core, Angular 8, SQL Server, MongoDB. Containerized and tested.","language":"C#","stars":10,"topics":["cqrs-es","rabbitmq","mongodb","asp-net-core","angular","docker","test-automation","event-sourcing","typescript","azure-pipelines"],"license":null,"category":"deployment-docker-iac","readme_excerpt":"Introduction Web application that provides functionality such as buying items, selling items and creating auctions. It's kind of more complex POC. It's using CQRS and event sourcing patterns as well as ports and adapters architecture. From the conceptual point of view, application is split into modules and into query and command operations that are reading and writing to separate databases. Modules are lousely coupled and communicate with each other by sending events. Coordination across modules is implemented with use of saga pattern . Query database is being synchronized with command database with use of event bus implemented by RabbitMQ, so system is eventually consistent . State of the project Some of use-cases are still not working and they require to design some parts of a domain model and rewrite / test some parts of the infrastructure. Below you can read a list of planned functionalities Functionalities Account sign-in, sign-up reset password oauth Auctions adding new auction buy bidding pay with user credits (fake currency) manage user credits payment gateway integration searching listing and sorting Other demo mode password hashing (for development needs) Architectural and technical concerns Modular architecture, intended to be deployed as microservices, currently it's deployed as monolith (Command WEB API project) Saga pattern implementation currently using custom fork of Chronice: https://github.com/pekalam/Chronicle and SQL Server integration https://github.com/p","default_branch":null,"files":null,"tree":[],"storefront":"/r/pekalam","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pekalam/auctionhouse/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}