{
  "format": "dataset-manifest/1",
  "slug": "culinary-connections",
  "version": 3,
  "seed": "culinary-connections:1",
  "spec": {
    "format": "dataset/1",
    "slug": "culinary-connections",
    "name": "Culinary Connections",
    "tagline": "A vibrant community dataset for sharing recipes and meal planning.",
    "description": "Culinary Connections is a synthetic dataset designed to capture the essence of a thriving culinary community where home chefs and food enthusiasts unite. This dataset models recipes, ingredients, cooking equipment, and dietary preferences, creating a rich resource for anyone interested in culinary exploration. Through the graph-edges structure, users can visualize how different recipes are interconnected via shared ingredients, techniques, and dietary needs. This dataset is particularly useful for teaching and SQL practice, providing ample opportunities to explore relationships and aggregate data.\n\nIn this dataset, each recipe is represented as a node, while edges represent connections through common ingredients, cooking equipment, or dietary preferences. The data showcases popular recipes that feature staple ingredients like chicken, pasta, and seasonal vegetables, while also highlighting unique dietary restrictions that may influence meal planning. Users can practice querying this data to uncover trends, analyze ingredient usage, and discover clusters of popular recipes, making it an excellent resource for aspiring data analysts and culinary enthusiasts alike. The dataset is entirely synthetic, ensuring it remains a safe and flexible tool for learning.",
    "domain": "restaurants",
    "shape": "graph-edges",
    "useCases": [
      "sql-practice",
      "teaching"
    ],
    "keywords": [
      "recipes",
      "ingredients",
      "meal planning",
      "cooking",
      "dietary preferences",
      "community",
      "culinary",
      "data"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "recipes": {
        "description": "Each row represents a recipe, detailing its ingredients, equipment, and dietary preferences. Recipes are interconnected through shared ingredients or cooking methods, forming a network of culinary knowledge.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each recipe."
          },
          "recipe_name": {
            "kind": "words",
            "min": 1,
            "max": 3,
            "description": "The name of the recipe.",
            "pool": [
              "spaghetti",
              "salad",
              "tacos",
              "curry",
              "soup",
              "pizza",
              "sushi",
              "stew",
              "quiche",
              "pasta",
              "omelette",
              "cake",
              "brownies",
              "wrap",
              "sandwich",
              "stirfry",
              "smoothie",
              "pancakes",
              "casserole",
              "burrito"
            ]
          },
          "ingredients": {
            "kind": "words",
            "min": 1,
            "max": 5,
            "description": "A list of ingredients used in the recipe.",
            "pool": [
              "tomato",
              "chicken",
              "onion",
              "garlic",
              "pepper",
              "cheese",
              "lettuce",
              "rice",
              "beans",
              "carrot",
              "broccoli",
              "spinach",
              "potato",
              "egg",
              "basil",
              "olive",
              "vinegar",
              "salt",
              "sugar",
              "flour",
              "butter",
              "milk",
              "yogurt",
              "pasta",
              "coconut",
              "cinnamon",
              "ginger",
              "lemon",
              "lime",
              "herbs",
              "spices",
              "nuts",
              "fruit"
            ]
          },
          "cooking_equipment": {
            "kind": "words",
            "min": 1,
            "max": 4,
            "description": "Essential cooking tools needed for the recipe.",
            "pool": [
              "pan",
              "pot",
              "knife",
              "cuttingboard",
              "blender",
              "oven",
              "grater",
              "spatula",
              "whisk",
              "measuringcup",
              "bakingtray",
              "colander",
              "mixingbowl",
              "griddle",
              "steamer",
              "saucepan",
              "peeler",
              "tongs",
              "sifter",
              "thermometer",
              "fryingpan"
            ]
          },
          "dietary_preferences": {
            "kind": "enum",
            "values": [
              "vegan",
              "vegetarian",
              "gluten-free",
              "nut-free",
              "dairy-free",
              "none"
            ],
            "description": "Dietary restrictions applicable to the recipe."
          },
          "cooking_time": {
            "kind": "int",
            "min": 5,
            "max": 180,
            "description": "Total cooking time in minutes.",
            "distribution": "normal"
          },
          "rating": {
            "kind": "decimal",
            "min": 1,
            "max": 5,
            "scale": 1,
            "description": "Average user rating of the recipe.",
            "distribution": "high"
          },
          "created_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "Date the recipe was created.",
            "dayProfile": "business"
          }
        }
      }
    },
    "structure": "single-table",
    "traits": [
      "high-cardinality",
      "free-text",
      "categorical"
    ],
    "analysisQuestions": [
      "What are the most common ingredients used across recipes?",
      "Which dietary preferences are most frequently represented in the dataset?",
      "How does the average rating of recipes vary by cooking time?",
      "What are the trends in recipe creation over time?"
    ],
    "suggestedQueries": [
      {
        "title": "List all recipes with a specific ingredient",
        "sql": "SELECT recipe_name FROM recipes WHERE ingredients ILIKE '%ingredient%';",
        "dialect": "postgres"
      },
      {
        "title": "Find recipes by dietary preference",
        "sql": "SELECT recipe_name FROM recipes WHERE dietary_preferences = 'vegetarian';",
        "dialect": "postgres"
      },
      {
        "title": "Count recipes by cooking time range",
        "sql": "SELECT COUNT(*) FROM recipes WHERE cooking_time BETWEEN 30 AND 60;",
        "dialect": "postgres"
      },
      {
        "title": "Get average rating of recipes by dietary preference",
        "sql": "SELECT dietary_preferences, AVG(rating) FROM recipes GROUP BY dietary_preferences;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Culinary Educators",
        "body": "Culinary instructors can utilize this dataset to teach students about recipe development, ingredient sourcing, and dietary considerations. By analyzing the data, students can learn to identify popular trends and create recipes that cater to diverse dietary needs."
      },
      {
        "title": "Data Analysts",
        "body": "Data analysts can practice SQL querying with this dataset, exploring the relationships between ingredients, cooking methods, and user ratings. They can gain experience in aggregating data and uncovering insights that inform meal planning and recipe popularity."
      },
      {
        "title": "Home Chefs",
        "body": "Home chefs looking to expand their cooking repertoire can use this dataset to discover new recipes that align with their dietary preferences. By filtering recipes, they can find meals that utilize ingredients they already have on hand, making meal planning efficient and enjoyable."
      }
    ]
  },
  "counts": {
    "recipes": 200
  },
  "stats": {
    "recipes": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "recipe_name": {
          "nulls": 0,
          "distinct": 138
        },
        "ingredients": {
          "nulls": 0,
          "distinct": 182
        },
        "cooking_equipment": {
          "nulls": 0,
          "distinct": 169
        },
        "dietary_preferences": {
          "nulls": 0,
          "distinct": 6,
          "min": "dairy-free",
          "max": "vegetarian"
        },
        "cooking_time": {
          "nulls": 0,
          "distinct": 86,
          "min": 25,
          "max": 153
        },
        "rating": {
          "nulls": 0,
          "distinct": 40,
          "min": 1,
          "max": 5
        },
        "created_at": {
          "nulls": 0,
          "distinct": 200,
          "min": "2020-01-02 11:26:26",
          "max": "2023-01-01 10:08:39"
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/recipes.csv",
      "format": "csv",
      "table": "recipes",
      "key": "datasets/culinary-connections/v3/csv/recipes.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/culinary-connections/v3/csv/recipes.csv",
      "bytes": 19270,
      "sha256": "88aad18568bb26c49f9b3ecccc5270c4c90028f26f29faaf3231590a49d2d34a",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "culinary-connections.json",
      "format": "json",
      "table": null,
      "key": "datasets/culinary-connections/v3/culinary-connections.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/culinary-connections/v3/culinary-connections.json",
      "bytes": 58515,
      "sha256": "25bded2b7b90912338eb3053c1e8ba2f2583350c67df1e10cbfde791e9c8d8b2",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/culinary-connections/v3/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/culinary-connections/v3/sql/postgres.sql",
      "bytes": 24676,
      "sha256": "ea2d2bedcfda0b780636d36e8a4c9a5a85b140b2de7f3515f8c4337c57b7a946",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/culinary-connections/v3/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/culinary-connections/v3/sql/mysql.sql",
      "bytes": 24574,
      "sha256": "4eeaf8551f780784aa95320a6e5475aec1b4e72a8e5ae2583d61ab7ba04bb167",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/culinary-connections/v3/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/culinary-connections/v3/sql/mssql.sql",
      "bytes": 25638,
      "sha256": "d2594461b3e081c1a8619f68ad44180f8a5475659b40b56ea8c546fd913cccf8",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/culinary-connections/v3/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/culinary-connections/v3/sql/sqlite.sql",
      "bytes": 24529,
      "sha256": "2df781deccf82294b2e5ec34d1d4e56d0c614cc90ef43cce0a013f6383e9a2da",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/culinary-connections/v3/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/culinary-connections/v3/prisma/seed.ts",
      "bytes": 49903,
      "sha256": "66fcb801b2f0495ddfed04f4a91d8fc904b2f93e431a57cb03baa2fd4e0bfdb7",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/culinary-connections/v3/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/culinary-connections/v3/django/fixtures.json",
      "bytes": 67776,
      "sha256": "6903bda93fb4a3965db2e85cff694282d8b77506dac1525e22fe1dc3529b5b52",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788768306491,
  "updatedAt": 1788783161485
}
