Skip to content

Latest commit

 

History

79 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Milkshakes!

An app to manage your recipes

Milkshakes!

Technical name: milkshakes-app

Notice! When launching the app (hosted by Heroku) for the first time, it may take a few (2 < n < 8) seconds to launch.

Live version: https://milkshakes-app.herokuapp.com/

This is a very simple app that you can use to view and edit recipes of milkshakes. A milkshake consists of a name, description and a collection (array) of ingredients. An ingredient has a name and a type associated with it.


Languages used: Java, HTML, CSS, JavaScript, SQL, XML

Technologies used: Maven, Spark, Thymeleaf, reCAPTCHA

Databases: SQLite (locally), PostgreSQL (online)

Services used: GitHub, Heroku


The database tables are listed here.

For PostgreSQL, the column 'id' will be of type SERIAL. SQLite uses an INTEGER.

Table: Recipe

CREATE TABLE "Recipe" (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  name VARCHAR(32) CHECK(name <> "") NOT NULL UNIQUE,
  description VARCHAR(64) CHECK(description <> "") NOT NULL,
  isInitial BOOLEAN DEFAULT FALSE,
  createTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
  updateTime TIMESTAMP DEFAULT NULL
);

Table: Ingredient

CREATE TABLE "Ingredient" (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  name VARCHAR(32) CHECK(name <> "") NOT NULL UNIQUE,
  unit CHAR(1) NOT NULL,
  isInitial BOOLEAN DEFAULT FALSE,
  createTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
  updateTime TIMESTAMP DEFAULT NULL
);

Table: Recipe_Ingredient

CREATE TABLE "Recipe_Ingredient" (
  recipe_id INT,
  ingredient_id INT,
  step INT CHECK(step >= 1) NOT NULL,
  amount FLOAT(2) NOT NULL,
  instructions VARCHAR(32),
  isInitial BOOLEAN DEFAULT FALSE,
  createTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
  updateTime TIMESTAMP DEFAULT NULL,
  PRIMARY KEY ("recipe_id", "ingredient_id"),
  FOREIGN KEY ("recipe_id") REFERENCES "Recipe"("id"),
  FOREIGN KEY ("ingredient_id") REFERENCES "Ingredient"("id")
);

About

An app to manage your recipes

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages