void-type / FoodStuffs

A web application for managing recipes. This application demonstrates the VoidCore libraries.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FoodStuffs

License ReleaseVersion Build Status Test Coverage

A web application for managing recipes.

FoodStuffs is based on ASP.NET Core 7 and Vue 3.

This application demonstrates the VoidCore libraries.

Features

  • Meal cards to build weekly shopping list.
  • Category tags on recipes.
  • Images for recipes.
  • Copy recipes.
  • Random sort discovery on home page.
  • Search and pagination.
  • Recent history list.
  • Unsaved change detection.
  • Responsive UI using Bootstrap grid.
  • Dark mode.
  • Printer-friendly views.
  • See screenshots here.

Build and Run FoodStuffs

Make a Database

This project now uses Entity Framework Code First, but used to use Database First.

To create a new database, uncomment the up/down method bodies in the initial migration and run ./build/dbApplyMigration.ps1.

To update your database after v9.0.0, run ./build/dbCreateMigration.ps1.

If upgrading a database from before v9.0.0, migration scripts in /build/sql in order by date, then run ./build/dbApplyMigration.ps1.

Local build (production and development)

Install the following tools:

See the /build folder for scripts used to test and build this project.

There are VSCode tasks for each script. The build task (ctrl + shift + b) performs the standard CI build.

Run build.ps1 to make a production build.

./build/build.ps1

IIS Deployment

Use the deployment/setup scripts as templates to deploy to your environment.

./build/setupWebServer.ps1

./build/deployAppToProduction.ps1

Docker multi-stage build

You don't need .NET or Node locally to run this application in Docker.

docker build

About

A web application for managing recipes. This application demonstrates the VoidCore libraries.

License:MIT License


Languages

Language:C# 49.3%Language:Vue 27.4%Language:TypeScript 15.0%Language:PowerShell 3.5%Language:TSQL 2.1%Language:SCSS 1.2%Language:HTML 0.7%Language:JavaScript 0.3%Language:Dockerfile 0.3%Language:CSS 0.1%