Coder Social home page Coder Social logo

srul1k / northwind Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 2.0 6.81 MB

Northwind is a simple MVC application with CRUD operations for working with Products and Categories designed on a Clean Architecture.

C# 82.90% HTML 14.01% CSS 2.02% JavaScript 1.07%
aspnet-core-mvc clean-architecture ef-core swagger automapper moq nunit aspnet-core-identity mssql fluentvalidation

northwind's Introduction

AppVeyor branch AppVeyor tests (branch) Quality Gate Status
Lines of Code Bugs Code Smells
Duplicated Lines (%) Coverage

🎞️ Presentation

Presentation

📜 General description

Northwind is a simple MVC application with CRUD operations for working with Products and Categories designed on a Clean Architecture.

▶️ Starting the project

The following developer tools are recommended for running the project:

Steps for running project:

⚠️ If you have some problems with project, please write to me.

Installation:

  1. Download and install MS Visual Studio. When you install VS 2019 Community make sure you select “ASP.NET and web development” package.
    Please follow the link for more information

  2. Download and install MS SQL Server Express. Guide

  3. Download and install SQL Server Express LocalDB. Guide

  4. Download and install Git Bash for windows with default installation settings.

  5. Open Git Bash and set-up your name and e-mail by using next commands:

    git config --global user.name <your full name>  
    git config --global user.email <your email>

    Please follow the link for more information

  6. Open Git console, push and select the path where the project will be located by using the command:

    cd /d <your full path>
  7. Clone this repository by using the command:

    git clone https://github.com/Srul1k/Northwind.git

Configuration:

  1. Open the query that you can find in the res folder using Microsoft SQL Server Managment Studio 18.

  2. Enter in the server name: (localdb)\mssqllocaldb

  3. Execute the query.
    Please follow the link for more information

  4. Open the appsettings.Development.json file that is located on this path: src/Northwind.Web

    • Configure AzureAD section if you want to log in with a Microsoft account (optional).
      Please follow the link for more information
    • Configure the EmailService section by entering an e-mail and password. Make sure that the permission to use third-party services is set in your mail service. Passwords for recovery will be sent to users via this mail (optional, it is recommended to use Gmail).
      Please follow the link for more information
    • Configure the AdminInitializer section by entering an e-mail and password. This data will be used to log in as administrator.

Launch:

  1. Open the file Northwind.sln in the root directory using MS Visual Studio.
  2. Select Northwind.Web as a start-up project.
  3. Click on the run button (CTRL + F5). Please note, the first running can be long.
  4. Enjoy! ✨
ℹ️ Common Information

This project uses next stack of technologies:

C# ASP.NET Core Swagger EF Core MicrosoftSQLServer Bootstrap HTML5 CSS JavaScript Jquery

In the main this project consists of the following four parts:

  1. Northwind.Domain part contains POCO classes of entities used in the application.

  2. Northwind.Application part contains business application logic. Almost all of data and process functions are managed with services.

  3. Northwind.Infrastructure part contains all project repositories and application context as well as working with third-party services. Repositories allow the application to manage database. Application context links all entities with each other. Services help to send mails and initialize database.

  4. Northwind.Web part contains all program controllers, views, viewModels, viewComponents. Controllers link the business logic and the visual part of the application (Views). Also using ASP.NET Core Identity and controller attributes implemented authentication and authorization.

🦄 Contact me

If you have any good tips on the code or architecture of the application, please contact me and share it 💜

northwind's People

Contributors

srul1k avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.