├── .gitattributes ├── .gitignore ├── README.md ├── images ├── either-monad.JPG ├── exception-development.JPG ├── exception-prod.JPG ├── model-errors.JPG ├── optional-binding.JPG ├── solution-structure.JPG ├── swagger-ui.JPG ├── template-in-vs.JPG ├── test-suite.JPG └── thin-controllers.JPG ├── input.config ├── logo-only.png ├── overview.md ├── solution-snapshotter.exe ├── source ├── MyProject.sln ├── src │ ├── configuration │ │ ├── analyzers.ruleset │ │ └── stylecop.json │ └── server │ │ ├── MyProject.Api │ │ ├── Configuration │ │ │ ├── DependenciesConfiguration.cs │ │ │ └── MiddlewareConfiguration.cs │ │ ├── Controllers │ │ │ ├── OptionController.cs │ │ │ ├── UsersController.cs │ │ │ └── _Base │ │ │ │ └── ApiController.cs │ │ ├── Filters │ │ │ ├── ExceptionFilter.cs │ │ │ └── ModelStateFilter.cs │ │ ├── ModelBinders │ │ │ ├── OptionModelBinder.cs │ │ │ └── OptionModelBinderProvider.cs │ │ ├── MyProject.Api.Documentation.xml │ │ ├── MyProject.Api.csproj │ │ ├── Program.cs │ │ ├── Properties │ │ │ └── launchSettings.json │ │ ├── Startup.cs │ │ ├── appsettings.Development.json │ │ └── appsettings.json │ │ ├── MyProject.Business │ │ ├── Extensions │ │ │ └── OptionExtensions.cs │ │ ├── Identity │ │ │ └── JwtFactory.cs │ │ ├── MyProject.Business.csproj │ │ └── Services │ │ │ └── UsersService.cs │ │ ├── MyProject.Core │ │ ├── Configuration │ │ │ └── JwtConfiguration.cs │ │ ├── Error.cs │ │ ├── Identity │ │ │ └── IJwtFactory.cs │ │ ├── Mappings │ │ │ └── UsersMapping.cs │ │ ├── Models │ │ │ ├── JwtModel.cs │ │ │ ├── LoginUserModel.cs │ │ │ ├── RegisterUserModel.cs │ │ │ └── UserModel.cs │ │ ├── MyProject.Core.csproj │ │ └── Services │ │ │ └── IUsersService.cs │ │ ├── MyProject.Data.EntityFramework │ │ ├── ApplicationDbContext.cs │ │ └── MyProject.Data.EntityFramework.csproj │ │ └── MyProject.Data │ │ ├── Entities │ │ └── User.cs │ │ └── MyProject.Data.csproj └── tests │ └── MyProject.Business.Tests │ ├── DbContextProvider.cs │ ├── Identity │ └── JwtFactoryTests.cs │ ├── IdentityMocksProvider.cs │ ├── MyProject.Business.Tests.csproj │ └── Services │ └── UsersServiceTests.cs └── template-icon.ico /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/README.md -------------------------------------------------------------------------------- /images/either-monad.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/either-monad.JPG -------------------------------------------------------------------------------- /images/exception-development.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/exception-development.JPG -------------------------------------------------------------------------------- /images/exception-prod.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/exception-prod.JPG -------------------------------------------------------------------------------- /images/model-errors.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/model-errors.JPG -------------------------------------------------------------------------------- /images/optional-binding.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/optional-binding.JPG -------------------------------------------------------------------------------- /images/solution-structure.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/solution-structure.JPG -------------------------------------------------------------------------------- /images/swagger-ui.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/swagger-ui.JPG -------------------------------------------------------------------------------- /images/template-in-vs.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/template-in-vs.JPG -------------------------------------------------------------------------------- /images/test-suite.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/test-suite.JPG -------------------------------------------------------------------------------- /images/thin-controllers.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/images/thin-controllers.JPG -------------------------------------------------------------------------------- /input.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/input.config -------------------------------------------------------------------------------- /logo-only.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/logo-only.png -------------------------------------------------------------------------------- /overview.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/overview.md -------------------------------------------------------------------------------- /solution-snapshotter.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/solution-snapshotter.exe -------------------------------------------------------------------------------- /source/MyProject.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/MyProject.sln -------------------------------------------------------------------------------- /source/src/configuration/analyzers.ruleset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/configuration/analyzers.ruleset -------------------------------------------------------------------------------- /source/src/configuration/stylecop.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/configuration/stylecop.json -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Configuration/DependenciesConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Configuration/DependenciesConfiguration.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Configuration/MiddlewareConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Configuration/MiddlewareConfiguration.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Controllers/OptionController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Controllers/OptionController.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Controllers/UsersController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Controllers/UsersController.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Controllers/_Base/ApiController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Controllers/_Base/ApiController.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Filters/ExceptionFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Filters/ExceptionFilter.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Filters/ModelStateFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Filters/ModelStateFilter.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/ModelBinders/OptionModelBinder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/ModelBinders/OptionModelBinder.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/ModelBinders/OptionModelBinderProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/ModelBinders/OptionModelBinderProvider.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/MyProject.Api.Documentation.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/MyProject.Api.Documentation.xml -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/MyProject.Api.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/MyProject.Api.csproj -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Program.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Properties/launchSettings.json -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/Startup.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/Startup.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/appsettings.Development.json -------------------------------------------------------------------------------- /source/src/server/MyProject.Api/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Api/appsettings.json -------------------------------------------------------------------------------- /source/src/server/MyProject.Business/Extensions/OptionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Business/Extensions/OptionExtensions.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Business/Identity/JwtFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Business/Identity/JwtFactory.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Business/MyProject.Business.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Business/MyProject.Business.csproj -------------------------------------------------------------------------------- /source/src/server/MyProject.Business/Services/UsersService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Business/Services/UsersService.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Configuration/JwtConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Configuration/JwtConfiguration.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Error.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Error.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Identity/IJwtFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Identity/IJwtFactory.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Mappings/UsersMapping.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Mappings/UsersMapping.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Models/JwtModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Models/JwtModel.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Models/LoginUserModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Models/LoginUserModel.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Models/RegisterUserModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Models/RegisterUserModel.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Models/UserModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Models/UserModel.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/MyProject.Core.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/MyProject.Core.csproj -------------------------------------------------------------------------------- /source/src/server/MyProject.Core/Services/IUsersService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Core/Services/IUsersService.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Data.EntityFramework/ApplicationDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Data.EntityFramework/ApplicationDbContext.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Data.EntityFramework/MyProject.Data.EntityFramework.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Data.EntityFramework/MyProject.Data.EntityFramework.csproj -------------------------------------------------------------------------------- /source/src/server/MyProject.Data/Entities/User.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Data/Entities/User.cs -------------------------------------------------------------------------------- /source/src/server/MyProject.Data/MyProject.Data.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/src/server/MyProject.Data/MyProject.Data.csproj -------------------------------------------------------------------------------- /source/tests/MyProject.Business.Tests/DbContextProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/tests/MyProject.Business.Tests/DbContextProvider.cs -------------------------------------------------------------------------------- /source/tests/MyProject.Business.Tests/Identity/JwtFactoryTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/tests/MyProject.Business.Tests/Identity/JwtFactoryTests.cs -------------------------------------------------------------------------------- /source/tests/MyProject.Business.Tests/IdentityMocksProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/tests/MyProject.Business.Tests/IdentityMocksProvider.cs -------------------------------------------------------------------------------- /source/tests/MyProject.Business.Tests/MyProject.Business.Tests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/tests/MyProject.Business.Tests/MyProject.Business.Tests.csproj -------------------------------------------------------------------------------- /source/tests/MyProject.Business.Tests/Services/UsersServiceTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/source/tests/MyProject.Business.Tests/Services/UsersServiceTests.cs -------------------------------------------------------------------------------- /template-icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dnikolovv/devadventures-net-core-template/HEAD/template-icon.ico --------------------------------------------------------------------------------