├── ModularMonolithicArch.WordGame.Presentation
├── Sections
│ ├── LetterSection.razor.css
│ ├── HintSection.razor
│ ├── LetterSection.razor
│ ├── CategoryCardSection.razor
│ └── LevelCardSection.razor
├── wwwroot
│ ├── background.png
│ └── exampleJsInterop.js
├── ServiceCollectionExtension.cs
├── ModularMonolithicArch.WordGame.Presentation.csproj
├── _Imports.razor
└── Pages
│ ├── AddCategoryPage.razor
│ ├── CategoriesPage.razor
│ └── LevelsPage.razor
├── ModularMonolithicArch.User.Presentation
├── wwwroot
│ ├── background.png
│ └── exampleJsInterop.js
├── Pages
│ ├── AccessDeniedPage.razor
│ ├── RegisterPage.razor
│ └── LoginPage.razor
├── RedirectToLogin.razor
├── _Imports.razor
├── ModularMonolithicArch.User.Presentation.csproj
├── ServiceCollectionExtension.cs
├── Sections
│ └── StatusMessage.razor
└── IdentityRedirectManager.cs
├── ModularMonolithicArch.TypeGame.Presentation
├── wwwroot
│ ├── background.png
│ └── exampleJsInterop.js
├── _Imports.razor
├── ModularMonolithicArch.TypeGame.Presentation.csproj
└── Pages
│ └── PlayPage.razor.css
├── ModularMonolithicArch.ImageGame.Presentation
├── wwwroot
│ ├── background.png
│ └── exampleJsInterop.js
├── ServiceCollectionExtension.cs
├── ModularMonolithicArch.ImageGame.Presentation.csproj
├── _Imports.razor
└── Pages
│ └── AddCategoryPage.razor
├── ModularMonolithicArch.Web
├── ModularMonolithicArch.Web
│ ├── Components
│ │ ├── Pages
│ │ │ ├── Home.razor
│ │ │ └── Error.razor
│ │ ├── Layout
│ │ │ ├── MainLayout.razor
│ │ │ ├── Shared
│ │ │ │ └── DropDownSection.razor
│ │ │ └── MainLayout.razor.css
│ │ ├── _Imports.razor
│ │ ├── Routes.razor
│ │ └── App.razor
│ ├── wwwroot
│ │ ├── favicon.png
│ │ ├── Images
│ │ │ └── 6a9f08d8-0e7d-4cd5-95bc-fe5f434f6577.jpg
│ │ └── app.css
│ ├── appsettings.Development.json
│ ├── appsettings.json
│ ├── Configuration
│ │ ├── ExceptionHandlerExtension.cs
│ │ ├── RoleExtension.cs
│ │ ├── SignalRExtension.cs
│ │ ├── SwaggerOptions.cs
│ │ ├── SwaggerExtension.cs
│ │ ├── BlazorExtension.cs
│ │ └── IdentityExtension.cs
│ ├── Exceptions
│ │ └── DefaultExceptionHandler.cs
│ ├── Properties
│ │ └── launchSettings.json
│ ├── ModularMonolithicArch.Web.csproj
│ └── Program.cs
└── ModularMonolithicArch.Web.Client
│ ├── wwwroot
│ ├── appsettings.json
│ └── appsettings.Development.json
│ ├── Configuration
│ ├── UserInfo.cs
│ ├── IdentityConfigurationsExtension.cs
│ └── PersistentAuthenticationStateProvider.cs
│ ├── Program.cs
│ ├── _Imports.razor
│ ├── ServiceCollectionExtension.cs
│ └── ModularMonolithicArch.Web.Client.csproj
├── ModularMonolithicArch.Shared
├── wwwroot
│ └── CustomJs
│ │ └── Modal.js
├── Modal
│ ├── ModalResult.cs
│ ├── ModalOptions.cs
│ └── ModalService.cs
├── Sections
│ ├── CountDownSection.razor.css
│ ├── StopWatchSection.razor.css
│ ├── ButtonSection.razor
│ ├── InputSection.razor
│ ├── AlertSection.razor
│ ├── EditableSection.razor
│ ├── StopWatchSection.razor
│ ├── CountDownSection.razor
│ ├── HealthSection.razor
│ └── ModalSection.razor
├── _Imports.razor
├── ServiceCollectionExtension.cs
└── ModularMonolithicArch.Shared.csproj
├── ModularMonolithicArch.UserModule
├── Shared
│ ├── Persistence
│ │ ├── Schema.cs
│ │ └── UserContext.cs
│ └── Domain
│ │ └── Entity
│ │ └── ApplicationUser.cs
├── Integrations
│ ├── Queries
│ │ ├── GetUserRequestHandler.cs
│ │ ├── GetUserHealthRequestHandler.cs
│ │ └── GetCurrentUserRequestHandler.cs
│ └── Commands
│ │ ├── DecreaceUserHealthRequestHandler.cs
│ │ └── IncreaseUsersHealthRequestHandler.cs
├── ModularMonolithicArch.UserModule.csproj
├── ServiceCollectionExtension.cs
└── Features
│ └── Account
│ ├── Login.cs
│ └── Register.cs
├── ModularMonolithicArch.WordGame.Infrastructure
├── Context
│ ├── Schema.cs
│ └── WordGameContext.cs
├── BackroundTasks
│ └── HealthBackgroundService.cs
├── ModularMonolithicArch.WordGame.Infrastructure.csproj
├── ServiceCollectionExtension.cs
├── Services
│ └── CategoryService.cs
└── Migrations
│ └── 20240831140842_wordGame.cs
├── ModularMonolithicArch.ImageGame.Infrastructure
├── Context
│ ├── Schema.cs
│ └── ImageGameContext.cs
├── Hubs
│ ├── ImageGameHub.cs
│ └── RoomHub.cs
├── ServiceCollectionExtension.cs
├── ModularMonolithicArch.ImageGame.Infrastructure.csproj
├── Migrations
│ └── 20240907110201_modify-room.cs
└── Services
│ └── CategoryService.cs
├── ModularMonolithicArch.User.Contract
├── Messages
│ ├── Commands
│ │ ├── IncreaseUsersHealthRequest.cs
│ │ └── DecreaseUserHealthRequest.cs
│ └── Queries
│ │ ├── GetCurrentUserRequest.cs
│ │ ├── GetUserRequest.cs
│ │ └── GetUserHealthRequest.cs
├── ApplicationUserDto.cs
└── ModularMonolithicArch.User.Contract.csproj
├── ModularMonolithicArch.WordGame.Domain
├── Core
│ ├── Word.cs
│ └── Letter.cs
├── Enums
│ └── LevelStatus.cs
├── Base
│ └── CategoryBase.cs
├── Entities
│ ├── Category.cs
│ └── Level.cs
├── Repository
│ ├── ILetterService.cs
│ ├── IWordGameService.cs
│ └── IWordService.cs
├── ModularMonolithicArch.WordGame.Domain.csproj
├── Services
│ ├── LetterService.cs
│ ├── WordGameService.cs
│ └── WordService.cs
└── ServiceCollectionExtension.cs
├── ModularMonolithicArch.ImageGame.Domain
├── Base
│ └── CategoryBase.cs
├── Enums
│ └── BoardSize.cs
├── Repository
│ ├── IImageService.cs
│ └── IImageGameService.cs
├── Entities
│ ├── Category.cs
│ ├── Image.cs
│ └── Room.cs
├── ModularMonolithicArch.ImageGame.Domain.csproj
├── Services
│ ├── ImageService.cs
│ └── ImageGameService.cs
└── ServiceCollectionExtension.cs
├── ModularMonolithicArch.ImageGame.Application
├── Category
│ ├── Dto
│ │ ├── CategoryDto.cs
│ │ └── CategoryDtoValidator.cs
│ ├── Mapper
│ │ ├── ICategoryMapper.cs
│ │ └── CategoryMapper.cs
│ ├── Queries
│ │ ├── Requests
│ │ │ └── GetCategoriesRequest.cs
│ │ └── Handlers
│ │ │ └── GetCategoriesRequestHandler.cs
│ ├── Commands
│ │ ├── Requests
│ │ │ └── AddCategoryRequest.cs
│ │ └── Handlers
│ │ │ └── AddCategoryRequestHandler.cs
│ └── Repository
│ │ └── ICategoryService.cs
├── Image
│ ├── Mapper
│ │ ├── IImageMapper.cs
│ │ └── ImageMapper.cs
│ ├── Dto
│ │ ├── ImageDto.cs
│ │ ├── ImageValidator.cs
│ │ └── IFormFileValidator.cs
│ ├── Commands
│ │ ├── Requests
│ │ │ ├── AddImageRequest.cs
│ │ │ └── UploadImageRequest.cs
│ │ └── Handlers
│ │ │ ├── AddImageRequestHandler.cs
│ │ │ └── UploadImageRequestHandler.cs
│ ├── Queries
│ │ ├── Requests
│ │ │ └── GetRandomImagesRequest.cs
│ │ └── Handlers
│ │ │ └── GetRandomImagesRequestHandler.cs
│ └── Repository
│ │ └── IImageService.cs
├── Room
│ ├── Mapper
│ │ ├── IRoomMapper.cs
│ │ └── RoomMapper.cs
│ ├── Commands
│ │ ├── Requests
│ │ │ ├── DeleteRoomRequest.cs
│ │ │ ├── SetWinnerRequest.cs
│ │ │ └── AddRoomRequest.cs
│ │ └── Handlers
│ │ │ ├── SetWinnerRequestHandler.cs
│ │ │ ├── DeleteRoomRequestHandler.cs
│ │ │ └── AddRoomRequestHandler.cs
│ ├── Queries
│ │ ├── Requests
│ │ │ ├── GetRoomsRequest.cs
│ │ │ └── GetRoomRequest.cs
│ │ └── Handlers
│ │ │ ├── GetRoomsRequestHandler.cs
│ │ │ └── GetRoomRequestHandler.cs
│ ├── Dto
│ │ ├── RoomDtoValidator.cs
│ │ └── RoomDto.cs
│ └── Repository
│ │ └── IRoomService.cs
├── ModularMonolithicArch.ImageGame.Application.csproj
└── ServiceCollectionExtension.cs
├── ModularMonolithicArch.WordGame.Application
├── Category
│ ├── Dto
│ │ ├── CategoryDto.cs
│ │ └── CategoryDtoValidator.cs
│ ├── Mapper
│ │ ├── ICategoryMapper.cs
│ │ └── CategoryMapper.cs
│ ├── Command
│ │ ├── Requests
│ │ │ └── AddCategoryRequest.cs
│ │ └── Handlers
│ │ │ └── AddCategoryRequestHandler.cs
│ ├── Queries
│ │ ├── Requests
│ │ │ └── GetCategoriesRequest.cs
│ │ └── Handlers
│ │ │ └── GetCategoriesRequestHandler.cs
│ └── Repository
│ │ └── ICategoryService.cs
├── Level
│ ├── Mapper
│ │ ├── ILeveMapper.cs
│ │ └── LeveMapper.cs
│ ├── Commands
│ │ ├── Requests
│ │ │ ├── DeleteLevelRequest.cs
│ │ │ ├── AddLevelRequest.cs
│ │ │ └── UpdateLevelRequest.cs
│ │ └── Handlers
│ │ │ ├── DeleteLevelHandler.cs
│ │ │ ├── AddLevelRequestHandler.cs
│ │ │ └── UpdateLevelHandler.cs
│ ├── Queries
│ │ ├── Requests
│ │ │ ├── GetLevelRequest.cs
│ │ │ └── GetNextLevelRequest.cs
│ │ └── Handlers
│ │ │ ├── GetLevelRequestHandler.cs
│ │ │ └── GetNextLevelRequestHandler.cs
│ ├── Dto
│ │ ├── LevelDto.cs
│ │ └── LevelDtoValidator.cs
│ └── Repository
│ │ └── ILevelService.cs
├── ModularMonolithicArch.WordGame.Application.csproj
└── ServiceCollectionExtension.cs
├── ModularMonolithicArch.User.Api
├── ServiceCollectionExtension.cs
├── ModularMonolithicArch.User.Api.csproj
└── Endpoints
│ └── Account
│ ├── AccountEndpoints.cs
│ └── AccountGroup.cs
├── ModularMonolithicArch.WordGame.Api
├── ModularMonolithicArch.WordGame.Api.csproj
├── ServiceCollectionExtension.cs
└── Endpoints
│ ├── Category
│ ├── CategoryGroups.cs
│ └── CategoryEndpoints.cs
│ └── Level
│ ├── LevelGroup.cs
│ └── LevelEndpoints.cs
├── ModularMonolithicArch.ImageGame.Api
├── ModularMonolithicArch.ImageGame.Api.csproj
├── ServiceCollectionExtension.cs
└── Endpoints
│ ├── Category
│ ├── CategoryGroup.cs
│ └── CategoryEndpoints.cs
│ ├── Image
│ ├── ImageGroup.cs
│ └── ImageEndpoints.cs
│ └── Room
│ ├── RoomGroup.cs
│ └── RoomEndpoints.cs
└── .gitattributes
/ModularMonolithicArch.WordGame.Presentation/Sections/LetterSection.razor.css:
--------------------------------------------------------------------------------
1 | .one-char-input {
2 | width: 5ch;
3 | }
4 |
--------------------------------------------------------------------------------
/ModularMonolithicArch.User.Presentation/wwwroot/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MohammadSajjadian/GameHub/HEAD/ModularMonolithicArch.User.Presentation/wwwroot/background.png
--------------------------------------------------------------------------------
/ModularMonolithicArch.TypeGame.Presentation/wwwroot/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MohammadSajjadian/GameHub/HEAD/ModularMonolithicArch.TypeGame.Presentation/wwwroot/background.png
--------------------------------------------------------------------------------
/ModularMonolithicArch.WordGame.Presentation/wwwroot/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MohammadSajjadian/GameHub/HEAD/ModularMonolithicArch.WordGame.Presentation/wwwroot/background.png
--------------------------------------------------------------------------------
/ModularMonolithicArch.ImageGame.Presentation/wwwroot/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MohammadSajjadian/GameHub/HEAD/ModularMonolithicArch.ImageGame.Presentation/wwwroot/background.png
--------------------------------------------------------------------------------
/ModularMonolithicArch.Web/ModularMonolithicArch.Web/Components/Pages/Home.razor:
--------------------------------------------------------------------------------
1 | @page "/"
2 |
3 |
You do not have access to this resource.
8 |@Text
5 |
12 | Request ID: @RequestId
13 |
18 | Swapping to Development environment will display more detailed information about the error that occurred. 19 |
20 |21 | The Development environment shouldn't be enabled for deployed applications. 22 | It can result in displaying sensitive information from exceptions to end users. 23 | For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development 24 | and restarting the app. 25 |
26 | 27 | @code{ 28 | [CascadingParameter] 29 | private HttpContext? HttpContext { get; set; } 30 | 31 | private string? RequestId { get; set; } 32 | private bool ShowRequestId => !string.IsNullOrEmpty(RequestId); 33 | 34 | protected override void OnInitialized() => 35 | RequestId = Activity.Current?.Id ?? HttpContext?.TraceIdentifier; 36 | } 37 | -------------------------------------------------------------------------------- /ModularMonolithicArch.ImageGame.Infrastructure/ModularMonolithicArch.ImageGame.Infrastructure.csproj: -------------------------------------------------------------------------------- 1 |There is no category to show
26 | } 27 | 28 | @code { 29 | private HealthSection _health = default!; 30 | private List