Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/profjordanov/weddingsplanner
Application for monitoring marriages around Bulgaria by Cordova and .NET
https://github.com/profjordanov/weddingsplanner
database-integration-test dotnet-core-webapi dotnet-core2 entity-framework-core json onboarding sql-server xml
Last synced: 9 days ago
JSON representation
Application for monitoring marriages around Bulgaria by Cordova and .NET
- Host: GitHub
- URL: https://github.com/profjordanov/weddingsplanner
- Owner: profjordanov
- License: mit
- Created: 2019-02-17T10:42:06.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-02-01T06:26:52.000Z (12 months ago)
- Last Synced: 2024-11-14T08:41:29.693Z (2 months ago)
- Topics: database-integration-test, dotnet-core-webapi, dotnet-core2, entity-framework-core, json, onboarding, sql-server, xml
- Language: JavaScript
- Homepage:
- Size: 7.94 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WeddingsPlanner
Application for monitoring marriages around Bulgaria.## Technology Stack:
- [x] C# 7.1
- [x] .NET Core Web API v2.1
- [x] EntityFramework Core with SQL Server and ASP.NET Identity
- [x] Apache Cordova
- [x] jQuery Mobile### Test Suite
- [x] SQL Database Integration Testing
- [x] Arrange Act Assert Pattern
- [x] xUnit
- [x] Autofixture
- [x] Moq
- [x] Shouldly## Features:
### Web API
- [x] AutoMapper
- [x] File logging with Serilog
- [x] JWT authentication/authorization
- [x] Stylecop
- [x] 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```
- [x] Global Model Errors Handler
- [x] Global Environment-Dependent Exception Handler
- [x] Neatly organized solution structure
- [x] Thin Controllers```csharp
/// POST: /Account/Login
///
/// Login.
///
[HttpPost]
public async Task Login(CredentialsModel model)
=> (await _usersService.LoginAsync(model))
.Match(RedirectToLocal, ErrorLogin);
```- [x] Robust service layer using the [Either](http://optional-github.com) 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`](https://dotnet.microsoft.com/download).2. If not, you'll need to have [SQLServer](https://www.microsoft.com/en-us/sql-server/sql-server-downloads) 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`](https://nodejs.org/en/).
### 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