Application for monitoring marriages around Bulgaria.
- C# 7.1
- .NET Core Web API v2.1
- EntityFramework Core with SQL Server and ASP.NET Identity
- Apache Cordova
- jQuery Mobile
- SQL Database Integration Testing
- Arrange Act Assert Pattern
- xUnit
- Autofixture
- Moq
- Shouldly
- AutoMapper
- File logging with Serilog
- JWT authentication/authorization
- Stylecop
- Neat folder structure
├───src
| |___clients
| ├───jQuery.Client
| ├───WeddingsPlanner.Mobile
│ ├───configuration
│ └───server
│ ├───WeddingsPlanner.Api
│ ├───WeddingsPlanner.Business
│ ├───WeddingsPlanner.Core
│ ├───WeddingsPlanner.Data
│ └───WeddingsPlanner.Data.EntityFramework
└───tests
└───WeddingsPlanner.Business.Tests
- Global Model Errors Handler
- Global Environment-Dependent Exception Handler
- Neatly organized solution structure
- Thin Controllers
/// POST: /Account/Login
/// <summary>
/// Login.
/// </summary>
[HttpPost]
public async Task<IActionResult> Login(CredentialsModel model)
=> (await _usersService.LoginAsync(model))
.Match(RedirectToLocal, ErrorLogin);
- Robust service layer using the Either monad.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
-
You'll need version
2.1.4
of the.NET Core SDK
. -
If not, you'll need to have SQLServer either installed locally or at least have some instance available to set up the connection strings.
-
For the mobile application, you will need
NodeJS
.
- Download it via
CLONE OR DOWNLOAD BUTTON
- Unzip the project
- Open the
.sln
file using Visual Studio - Set up the connection strings inside
WeddingsPlanner.Api/appsettings.Development.json
(or leave the set) - Execute
Update-Database
inside thePackage Manager Console
- Run the FamousQuoteQuiz.Api
- Go to src/client/WeddingsPlanner.Mobile
- Open it via Visual Studio