Skip to content

SvetlanaSurzhan/recipes-site

Repository files navigation

Recipes Web Application

What is it

Site of recipes where users will be able to browse recipes by categories, create a new recipes, update existing recipes and delete.

Technical Summary

  • Client side
    • React
    • Vanilla JS
    • Vanilla CSS
    • HTML
  • API
    • C#
    • ASP.NET Core 3.1
    • Entity Framework for Database
  • Database
    • SQL Express

How to install Project

  • Install Git
  • Clone repository
  • Install Client side
    • Go to /ClientApp folder
    • Install node packages npm install
  • Install API (.NET Core)
    • Install ASP.NET Core 3.1
    • Install nuget-package-manager in Visual Studio Code
    • Press Ctrl+Shift+P or Command+Shift+P, and type >nuget, select NuGet Package Manager: Add Package
  • Install Database
    • Download Database from mysql.com
    • Download MySQL Workbench
    • Open MySQL Workbench, click on Schemas
    • Copy and paste first script /1_migration_create_DB_and_tables_with_data in Visual Studio Code folder /SQLMigrations
    • Select All and execute
    • Copy and paste second script /2_migration_create_user in Visual Studio Code folder /SQLMigrations, select all and execute
    • Refresh Schemas
    • Click right button on the Recipes table and click on Select Rows - Limit 1000, now you can see recipes(you can do the same with other tables)

Run the Project

  1. Launch Database server (port 3306)
  2. Build and run .NET Core API dotnet run
  3. Run Client side from /client folder npm start

Features

  • Create recipe
  • Update existing
  • Delete
  • Display Gallery

Milestone List

Week 1

  • Create README file
  • Create a simple Mockup via draw.io
  • Install everything for Project

Week 2

  • Create base project
    • API
    • Client side
    • Database
  • Create Entity Models and tables.

Week 3

  • Get API endpoints (get all, by Id)
  • Create endpoints

Week 4 - 7

  • Update endpoint
  • Delete endpoint
  • Create application shell (header, footer, background)
  • Create React recipe component
  • Create React new recipe/update recipe pages (with components)
  • Integrate Client side with ARI
  • UAT (user accepted testing)