Coder Social home page Coder Social logo

stanislavstoyanov99 / cookinghub Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 4.0 8.38 MB

ASP.NET Core team application for the course Software Technologies 2020 at Technical University of Sofia

License: MIT License

C# 57.56% HTML 26.29% CSS 10.63% JavaScript 5.52%
asp asp-net-core asp-net-mvc web-application cooking-recipes technical-university team-project software-engineering software-technologies sofia

cookinghub's Introduction

Hello there! I'm Stanislav 👋

Facebook Instagram LinkedIn GitHub

⚡GitHub Stats

My GitHub Stats My Most Used Languages

cookinghub's People

Contributors

aparaskov avatar dimitarpashov99 avatar stanislavstoyanov99 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

cookinghub's Issues

Clean MVC template architecture

There is a necessity to clean the MVC template architecture in order to be more simple and applicable to the project needs.

Implementation of chat using SignalR

This step includes fully implemented chat, which will use SignalR technology. The chat will provide users functionality for writing comments, sending references to recipes, which they have made and another stuff. The moderators in the web system have to moderate all the sent messages and they will have rights for editing/deleting these messages.

Nuget packages maintenance

At different stages while developing the web application, all assignees are required to take a look over nuget packages versions. In order to be up-to-date we need to make sure that all referenced libraries use the latest stable version.

Implementation of core business logic

The second step in building our application is to implement the core functionality of the business logic. This can be achieved by creating interfaces and their implementation in the Service layer of the MVC pattern. In general, these interfaces will present CRUD operations.

Write unit tests for services

We should cover the base implemented logic with unit tests for our services. For realization, we are going to use xUnit and SqlLite InMemory initialization of database.

Implementation of Recipes page in UI

We should implement Recipes pages where users can use the provided functionality - browse different recipes, select recipe categories, see interesting articles about them and the most valued reviews. This information is roughly presented and can be changed at any time by all assignees.

Implement Recipe details page

We should implement Recipe details pages where users can view information about the current opened recipe. This information is roughly presented and can be changed at any time by all assignees.

Database models should be created

The first step in building our application is to set up database models and their relationships. Our project will use code-first model and migrations using MSSQL Server.

Implement Home page

We should implement the one of the most complex pages in our system which is the Home page. In this page users will see well-organised slider with recipe images, have the chance to browse specific recipe, see the most reviewed recipes as well as the top reviews about them. At the bottom we should provide relevant contact information. This issue is roughly presented and can be changed at any time by all assignees.

Implementation of graphical interface

Another step in building our application is to create the necessary graphical interface in terms of MVC - the views. These views will present the output rendered HTML content, where the user can interact with our application. The already made controllers in #4 issue are responsible for the correctly generated output of the current web page.

Implementation of administrator panel

This step requires building sufficient administrator panel which will use service layer implemented in #3 issue. The panel will provide different functionality, like statistics, creating/editing/deleting models, banning users and so on. In future moment this issue will be fully discussed and fulfilled.

Web security realization in project

In addition to my course project, I will implement protection for the following vulnerabilities and attacks:

  • Brute force attack, Dictionary attack
  • Packet sniffing, Man in the middle
  • HTTP floods, Slowloris
  • Cross site scripting
  • SQL injection
  • Cross site request forgery

Implementation of controllers

The third step in building our application is to implement the core component of the MVC pattern - controllers. These controllers will use the already made business logic in #3 issue and will be responsible for generating the output result (render HTML pages or redirect to other page).

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.