profjordanov / WeddingsPlanner

Application for monitoring marriages around Bulgaria by Cordova and .NET

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

WeddingsPlanner

Application for monitoring marriages around Bulgaria.

Technology Stack:

  • C# 7.1
  • .NET Core Web API v2.1
  • EntityFramework Core with SQL Server and ASP.NET Identity
  • Apache Cordova
  • jQuery Mobile

Test Suite

  • SQL Database Integration Testing
  • Arrange Act Assert Pattern
  • xUnit
  • Autofixture
  • Moq
  • Shouldly

Features:

Web API

  • 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.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

  1. You'll need version 2.1.4 of the .NET Core SDK.

  2. If not, you'll need to have SQLServer either installed locally or at least have some instance available to set up the connection strings.

  3. For the mobile application, you will need NodeJS.

Running Using Visual Studio

  1. Download it via CLONE OR DOWNLOAD BUTTON
  2. Unzip the project
  3. Open the .sln file using Visual Studio
  4. Set up the connection strings inside WeddingsPlanner.Api/appsettings.Development.json (or leave the set)
  5. Execute Update-Database inside the Package Manager Console
  6. Run the FamousQuoteQuiz.Api
  7. Go to src/client/WeddingsPlanner.Mobile
  8. Open it via Visual Studio

About

Application for monitoring marriages around Bulgaria by Cordova and .NET

License:MIT License


Languages

Language:JavaScript 78.3%Language:CSS 10.1%Language:C# 5.0%Language:Objective-C 3.0%Language:Java 2.9%Language:HTML 0.4%Language:C++ 0.2%Language:QML 0.1%Language:C 0.0%