Manage (Household + Settings + Admin)

module_id
manage
source_nav_id
manage
user_facing_name
Manage
recipe_version
visual-recipe-v0.5
build
SmartPantry v0.1-rebuild (manual FvRE-style extraction, July 2026)

Purpose

All app configuration. Households, settings, data export, admin/dev tools.

recipe.json

{
  "schema_version": "visual-recipe-v0.5",
  "module_id": "manage",
  "name": "Manage (Household + Settings + Admin)",
  "source_nav_id": "manage",
  "user_facing_name": "Manage",
  "purpose": "All app configuration. Households, settings, data export, admin/dev tools.",
  "behaviour": {
    "households": {
      "create": "createHousehold",
      "join": "joinHousehold (by code)",
      "switch": "active household context",
      "leave": "leaveCurrentHousehold, leaveHousehold",
      "delete": "deleteCurrentHousehold, deleteHousehold",
      "dev_agent": "addDevAgentToCurrentHousehold (testing only)"
    },
    "settings": {
      "storage_overrides": "pantry_storageOverrides",
      "categories": "custom categories (pantry_customCategories)",
      "ingredients": "custom ingredients (pantry_custom_ingredients)",
      "db": "custom ingredient DB (pantry_custom_ingredientDB)",
      "recipes": "import/export/manage",
      "household_code": "manageHouseholdCode, manageHouseholdName",
      "ai": "manageAiSection (enable/disable AI features)"
    },
    "analytics": {
      "section_id": "manageAnalyticsSection",
      "shows": "shopping frequency, top ingredients, meal popularity"
    },
    "combos": {
      "section_id": "manageCombosSection",
      "purpose": "meal combos (pantry_mealCombos_v2)"
    },
    "staples": {
      "section_id": "manageStaplesSection",
      "purpose": "weekly staples (added to shopping automatically)"
    },
    "data_export": {
      "section_id": "manageDataSection",
      "section_purpose": "export/import all data, JSON download, restore"
    },
    "admin": {
      "section_purpose": "dev-mode tools (adminClearLocalStorage, adminReloadData, adminSwitchView, checkAdminStatus)"
    }
  },
  "data": {
    "households": "pantry_allHouseholds (localStorage)",
    "settings": "pantry_settings_v2 (localStorage)",
    "storage_overrides": "pantry_storageOverrides (localStorage)",
    "remote_backup_id": "jsonBlobId (localStorage)"
  },
  "key_functions": [
    "createHousehold",
    "joinHousehold",
    "closeCreateHouseholdModal",
    "closeJoinHouseholdModal",
    "closeManageHouseholdModal",
    "leaveCurrentHousehold",
    "leaveHousehold",
    "loadUserHouseholds",
    "deleteCurrentHousehold",
    "deleteHousehold",
    "addDevAgentToHousehold",
    "addDevAgentToCurrentHousehold",
    "generateManageSidebarContent",
    "getAllAppData",
    "goToManageStaples",
    "adminClearLocalStorage",
    "adminReloadData",
    "adminSwitchView",
    "checkAdminStatus",
    "confirmResetAllData"
  ],
  "files": {
    "html": "app/index.html#manage-tab",
    "css": "app/styles.css (manage panel + settings pill classes)",
    "js": "app/modules/manage.js"
  },
  "tests": [
    "Create household works",
    "Join by code works",
    "Switch active household works",
    "Settings persist",
    "Data export produces JSON",
    "Admin tools are dev-only gated"
  ]
}

Rebuild decisions for this module


Part of the SmartPantry module-organised rebuild. Authored by hand following the FvRE Recipe Book pattern. Source: /workspace/smartpantry-app/recipe-book/manage/recipe.json