Skip to content

Fraste01/ShelfLayoutManager

Repository files navigation

Shelf Layout Manager

Table of Contents

Overview

Shelf Layout Manager is a web application designed to manage products and their shelf locations. It allows users to add, edit, and delete products and shelves, and provides a user-friendly interface to navigate through these functionalities.

Features

  • Add, Edit, and Delete Products
  • Add, Edit, and Delete Shelves
  • Navigation between different sections of the application

Tech Stack

  • Frontend: Blazor, MatBlazor (provides a seamless experience on Android tablets using Material Design)
  • Testing: bUnit, Moq, xUnit

Setup and Installation

Prerequisites

  • .NET SDK 9.0 or later
  • Node.js (for frontend dependencies)

Steps

  1. Clone the repository:
    git clone [https://github.com/Fraste01/ShelfLayoutManager.git](https://github.com/Fraste01/ShelfLayoutManager.git)
    cd shelf-layout-manager
  2. Restore .NET dependencies:
    dotnet restore
  3. Build the application:
    dotnet build

Running the Application

To run the application locally:

dotnet run

Navigate to https://localhost:5001 to view the application.

Running Tests

To run the unit tests:

dotnet test

This will execute all the unit tests using bUnit, Moq, and xUnit.

Deployment

To deploy the application:

Publish the application:

dotnet publish -c Release -o out

Deploy the contents of the out directory to your web server or cloud service (e.g., Azure, AWS).

Development Time

Task Time Spent
Initial Setup (Read the documentation, Install all the packages needed) 2 hours
Implementing Product Features (Add, Edit, Delete) 4 hours
Implementing Shelf Features (Add, Edit, Delete) 4 hours
Navigation and UI Design 4 hours
Writing Unit Tests 3 hours
Documentation and Final Review 4 hours
Total 21 hours

Features

Must-Have

  • Add user authentication and authorization.
  • Upload images for products and use them inside the card for the layout.
  • Insert a specification for the shelves if they can store hot/cold or ambient temperature items as it will filter the products that can be stored.
  • Insert specification for the item if it has to be stored on a hot/cold or ambient temperature shelf.
  • Add functions to manage different stores.

Nice to have

  • Upload images for the shelf so it will be rendered correctly.
  • Calculate the dimension of the divs in the shelf drag-drop area with the dimension of the shelves/items so it's easier to represent the shelf.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published