99.5% pure .net framework used, no 3rd party library used for this project except healthcheck implementation
projects are implented to follow Domain Driven Design process, CQRS architectural pattern,SOLID Principles development guideline
- Postgresql (for faster write operation)
-
clone this repository by following this command
git clone https://github.com/MamunIssacProton/IntusWindows.gitusing your terminal/command prompt -
navigate to the project directory. you can use command like
cd IntusWindows -
run docker-compose file to pulling required postgresql image from dockerhub. you can use following command
docker compose -f "docker-compose.yml" up -d --build
or use visual studio code docker plugin to do docker-compose-up operation
-
Open the Solution (sln file) in Visual Studio or your IDE
-
Select the
IntusWindows.Sales.Order.Infrastructureproject to do the ### Databse migrationsyou can also navigate to the project by usng
cd IntusWindows.Sales.Order.Infrastructurefrom previous working directory
-
do migration by following this command
dotnet ef migrations add inityou can use your own migration name insted of init
-
apply pending migrations to database by following this command
dotent ef database update -
make sure to create multiple project startup from Visual Studio or your IDE, select
IntusWindows.Sales.Order.ApiandIntusWindows.Sales.Order.Web.Blazor.Hostedapp as the startup projects -
now run the application with the custom multiple project startup configuration.
There is no Database seeding technique implemented on project, so in order to test all feature, please do consider by creating
State
Dimension
Element
Window
Order
you will get a context menu in Order page by selecting order of your choice. the context menu has a bug where its don't get disappeared left mouse click [it may be the result of prevent deault browser options on mouse right button click]
you can try to open multiple window in single/multiple browser to test the integrations.
MaxWindowHeight=2200
MinWindowHeight=1850
MaxWindowWidth=1500
MinWindowWidth=600
MaxDoorHeight=2200
MinDoorHeight=1850
MaxDoorWidth=1400
MinDoorWidth=1200
you can find this contrains with validation logics on
IntusWindows.Sales.Order.Domain.Utils folder
-
Application Level (Blazor Wasm- client app) project on performing any
write/updateoperation. -
Api level
(IntusWindows.Sales.Order.Api)project to validate the incomingrequest/commandto perform operations. -
Domain level
IntusWindows.Sales.Order.Domainproject to do the finaldata validation check
-
you can find it on
IntusWindows.Sales.Order.Infrastructureproject repositories folder

