Giter Site home page Giter Site logo

emenu_backend_challenge_ahmad_kurdi's Introduction

Emenu Backend challenge (Ahmad Al Kurdi)


Table of Contents

Run

Notes


Run

  • It is important to know that I have used the ASP.NET Core 6 in this project, so to run it make sure that you have the same version installed on your device.

  • Download the project as a zip file or make a clone with git clone https://github.com/fadisam123/Emenu_Backend_challenge_Ahmad_Kurdi.git command.

  • Simply, either open the .sln file and from the Debug tab, choose Start Without Debuging. Or go to the folder named: Emenu_Backend_challenge_Ahmad_Kurdi, then open the command window in this path and execute the dotnet run command; It will download the required packages and compile the files, and then the program will run.

  • Upon running, a database will be created using SQL Server named EmenuDB_Ahmad_kurdi, and some data that I entered manually will be placed. You will notice that the server is now listening on https://localhost:7137. Now you can interact with the application at that address, or you can go to the documentation page at https://localhost:7137/swagger/index.html and see all possible actions an routs and interact with them directly.

image

image

image

Notes

  • Below is a diagram depicting my implementation of the database according to my understanding of the topic and requirements (Note that it can be further normalized and optimized if I conduct some inquiries and obtain more details to deepen my understanding)

image

  • The following image shows the project structure:

image

The Emenu_Backend_challenge_Ahmad_Kurdi is a console application (Web API) project representing the presentation layer (i.e., API).
The Application is a cross-platform class library representing the application logic layer.
The Infrastructure is a class library representing the data layer.
The Domain is a class library that contains the database mapped object (ORM), or the model of the system.
The DTOs is a shared class library used in the Application & Emenu_Backend_challenge_Ahmad_Kurdi projects.

  • Please note that I did not follow the N-tier architecture style 100% in this project. For example, I placed the repository interfaces (and unit of work) in the application layer rather than the infrastructure layer.
  • Also note that in this project I did not implement many things, for example, there is no data validation on input, no error/exception handling, auto-mapping, etc.
  • If you have any questions or issues about anything related to the project, code, or the running process; Please feel free to contact me immediately.

Thanks for your time.

emenu_backend_challenge_ahmad_kurdi's People

Contributors

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