Skip to content

jacekcielecki/LearningApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

220 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About The Project

LearningApp is .NET web api tailored for a online quiz application. Project architecture designed following Clean Architecture by Jayson Taylor.
React UI for application available, as well as it's alternative counterpart.

Built with

  • ASP.NET Core
  • SQL Server
  • Entity Framework Core
  • Microsoft Identity
  • FluentValidation
  • AutoMapper
  • XUnit
  • Moq
  • FluentAssertions
  • Azure Storage Blobs

Main Features

  • Authorization
  • User management
  • Creating questions divided by categories and difficulty levels
  • Tracking user progress in given category and level
  • Creating statistics
  • User scoreboard by user experience points
  • Rewarding users by unlocking user achivements
  • Managing images in storage

Getting Started

In order to setup project locally:

  1. Clone repository using git bash:
git clone https://github.com/jacekcielecki/Learning-App.git
  1. Setup MSSQL Server connection string in appsettings.Development.json
  "ConnectionStrings": {
  "azureSqlDb": "Server="SQL_SERVER_CONNECTION_STRING" 
  }
  1. Setup Azure Blob Storage connection string, and container names in appsettings.json
"BlobStorage": {
  "ConnectionString": "BLOB_STORAGE_CONNECTION_STRING",
  "ImageContainerName": "CONTAINER_NAME",
  "AvatarContainerName": "CONTAINER_NAME"
}
  1. Run application using dotnet cli (example)
dotnet run --project C:\Users\username\source\repos\Learning-App\WSBLearn.WebApi\WSBLearn.WebApi.csproj

Relationship Diagram

enter image description here

Endpoints

Swagger Documentation available: https://wsblearn-api.azurewebsites.net/swagger/index.html

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages