2、智能冰箱管家项目原型(墨刀AI)

本文展示了一个智能食材管理系统的移动端原型设计


页面采用iOS风格,包含状态栏、欢迎语、核心数据统计(库存总数42件、临期食材5件)、新鲜度评分仪表盘(当前85分)和 3x3网格展示的冰箱空间状态


底部导航栏提供首页、食材库、食谱、购物清单和个人中心五个功能入口。


设计使用HTML+CSS+JavaScript实现,采用Tailwind CSS框架,并集成了ECharts数据可视化图表。


页面整体布局简洁美观,交互元素清晰,展示了智能食材管理系统的核心功能模块。


原型


首页

食材库

购物清单

今日推荐


代码实现

来感受下墨刀AI的代码实力


index.html

html 复制代码
<!DOCTYPE html>

<html lang="zh-CN">
<head>
<meta charset="utf-8"/>
<meta content="width=device-width, initial-scale=1.0" name="viewport"/>
<title>智鲜管家 - 首页</title>
<script src="https://modao.cc/agent-py/static/source/js/tailwindcss.3.4.3.js"></script>
<script src="https://modao.cc/agent-py/static/source/js/iconify-icon.min.1.0.7.js"></script>
<script src="https://modao.cc/agent-py/static/source/js/echarts.min.5.4.3.js"></script>
<style>
        body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; background-color: #F2F2F7; }
        .ios-card { background: white; border-radius: 20px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
        .tab-active { color: #2A6DFF; }
    </style>
</head>
<body class="flex justify-center items-center min-h-screen">
<!-- 模拟手机容器 -->
<div class="w-[375px] h-[812px] bg-white relative overflow-hidden flex flex-col shadow-2xl rounded-[40px] border-[8px] border-black">
<!-- 状态栏 -->
<div class="h-11 w-full flex justify-between px-8 items-center text-sm font-semibold">
<span>9:41</span>
<div class="flex gap-1.5">
<iconify-icon class="text-black" icon="mdi:signal"></iconify-icon>
<iconify-icon class="text-black" icon="mdi:wifi"></iconify-icon>
<iconify-icon class="text-black" icon="mdi:battery"></iconify-icon>
</div>
</div>
<!-- 内容滚动区 -->
<div class="flex-1 overflow-y-auto px-5 pb-24">
<!-- 欢迎语 -->
<div class="mt-4 mb-6">
<h1 class="text-2xl font-bold text-gray-900">早安,主人!</h1>
<p class="text-gray-500 text-sm">今天是 2026年3月31日</p>
</div>
<!-- 核心数据 -->
<div class="grid grid-cols-2 gap-4 mb-6">
<div class="ios-card p-4 flex flex-col">
<span class="text-gray-400 text-xs font-medium mb-1">库存总数</span>
<div class="flex items-end gap-1">
<span class="text-3xl font-bold text-[#2A6DFF]">42</span>
<span class="text-gray-400 text-sm pb-1">件</span>
</div>
</div>
<div class="ios-card p-4 flex flex-col border-l-4 border-red-500">
<span class="text-gray-400 text-xs font-medium mb-1">即将过期</span>
<div class="flex items-end gap-1">
<span class="text-3xl font-bold text-red-500">5</span>
<span class="text-gray-400 text-sm pb-1">件</span>
</div>
</div>
</div>
<!-- 新鲜度评分 -->
<div class="ios-card p-5 mb-6">
<h3 class="text-sm font-bold text-gray-800 mb-2">全屋新鲜度评分</h3>
<div class="w-full h-40" id="healthChart"></div>
<p class="text-center text-xs text-gray-400 mt-2 italic">"冰箱环境优良,请尽快处理临期食材"</p>
</div>
<!-- 冰箱状态图 -->
<div class="ios-card p-5">
<div class="flex justify-between items-center mb-4">
<h3 class="text-sm font-bold text-gray-800">实时空间状态</h3>
<span class="text-[#2A6DFF] text-xs font-medium">查看详情</span>
</div>
<div class="grid grid-cols-3 gap-3">
<!-- 3x3 Grid -->
<div class="aspect-square bg-blue-50 rounded-lg flex items-center justify-center border border-blue-100">
<iconify-icon class="text-orange-400 text-2xl" icon="fluent:food-carrot-24-filled"></iconify-icon>
</div>
<div class="aspect-square bg-blue-50 rounded-lg flex items-center justify-center border border-blue-100">
<iconify-icon class="text-red-400 text-2xl" icon="fluent:food-apple-24-filled"></iconify-icon>
</div>
<div class="aspect-square bg-gray-50 rounded-lg flex items-center justify-center border border-gray-100 opacity-30">
<iconify-icon class="text-gray-400 text-xl" icon="mdi:plus"></iconify-icon>
</div>
<div class="aspect-square bg-blue-50 rounded-lg flex items-center justify-center border border-blue-100">
<iconify-icon class="text-yellow-500 text-2xl" icon="fluent:food-egg-24-filled"></iconify-icon>
</div>
<div class="aspect-square bg-blue-50 rounded-lg flex items-center justify-center border border-blue-100 relative">
<iconify-icon class="text-red-700 text-2xl" icon="fluent:food-meat-24-filled"></iconify-icon>
<div class="absolute -top-1 -right-1 w-3 h-3 bg-red-500 rounded-full border-2 border-white"></div>
</div>
<div class="aspect-square bg-blue-50 rounded-lg flex items-center justify-center border border-blue-100">
<iconify-icon class="text-pink-400 text-2xl" icon="fluent:food-cake-24-filled"></iconify-icon>
</div>
<div class="aspect-square bg-gray-50 rounded-lg flex items-center justify-center border border-gray-100 opacity-30">
<iconify-icon class="text-gray-400 text-xl" icon="mdi:plus"></iconify-icon>
</div>
<div class="aspect-square bg-blue-50 rounded-lg flex items-center justify-center border border-blue-100">
<iconify-icon class="text-blue-400 text-2xl" icon="fluent:drink-bottle-24-filled"></iconify-icon>
</div>
<div class="aspect-square bg-gray-50 rounded-lg flex items-center justify-center border border-gray-100 opacity-30">
<iconify-icon class="text-gray-400 text-xl" icon="mdi:plus"></iconify-icon>
</div>
</div>
</div>
</div>
<!-- 底部导航 -->
<div class="absolute bottom-0 left-0 right-0 h-20 bg-white/80 backdrop-blur-md border-t border-gray-100 px-6 flex justify-between items-center pb-4">
<a class="flex flex-col items-center tab-active" href="index.html">
<iconify-icon class="text-2xl" icon="solar:home-2-bold"></iconify-icon>
<span class="text-[10px] mt-1 font-bold">首页</span>
</a>
<a class="flex flex-col items-center text-gray-400" href="storage.html">
<iconify-icon class="text-2xl" icon="solar:fridge-bold"></iconify-icon>
<span class="text-[10px] mt-1">食材库</span>
</a>
<a class="flex flex-col items-center text-gray-400" href="recipes.html">
<iconify-icon class="text-2xl" icon="solar:chef-hat-bold"></iconify-icon>
<span class="text-[10px] mt-1">食谱</span>
</a>
<a class="flex flex-col items-center text-gray-400" href="shopping.html">
<iconify-icon class="text-2xl" icon="solar:cart-large-bold"></iconify-icon>
<span class="text-[10px] mt-1">清单</span>
</a>
<div class="flex flex-col items-center text-gray-400">
<iconify-icon class="text-2xl" icon="solar:user-bold"></iconify-icon>
<span class="text-[10px] mt-1">我的</span>
</div>
</div>
</div>
<script>
        // 初始化新鲜度图表
        const chart = echarts.init(document.getElementById('healthChart'));
        const option = {
            series: [{
                type: 'gauge',
                startAngle: 180,
                endAngle: 0,
                min: 0,
                max: 100,
                splitNumber: 8,
                axisLine: {
                    lineStyle: {
                        width: 10,
                        color: [
                            [0.3, '#FF4D4F'],
                            [0.7, '#FFA940'],
                            [1, '#2A6DFF']
                        ]
                    }
                },
                pointer: { icon: 'path://M12.8,0.7l12,40.1H0.7L12.8,0.7z', length: '12%', width: 10, offsetCenter: [0, '-40%'], itemStyle: { color: 'auto' } },
                axisTick: { distance: -15, length: 8, lineStyle: { color: '#fff', width: 2 } },
                splitLine: { distance: -20, length: 15, lineStyle: { color: '#fff', width: 4 } },
                axisLabel: { distance: -20, color: '#999', fontSize: 10 },
                anchor: { show: true, showAbove: true, size: 15, itemStyle: { color: '#2A6DFF' } },
                title: { show: false },
                detail: {
                    valueAnimation: true,
                    fontSize: 32,
                    fontWeight: 'bold',
                    offsetCenter: [0, '20%'],
                    formatter: '{value}',
                    color: '#2A6DFF'
                },
                data: [{ value: 85 }]
            }]
        };
        chart.setOption(option);
    </script>
</body>
</html>
相关推荐
Irene19916 小时前
1、智能冰箱管家项目开始了
技术选型·智能冰箱管家
梓贤Vigo9 小时前
【Axure原型分享】能上下拖动和滚动查看内容的中继器表格
交互·产品经理·axure·原型·中继器
xy345310 小时前
Axure 9.0 原生组件:让折线图实现动态交互(文本标签)
ui·交互·axure·原型·折线图
xy34531 天前
Axure 9.0 原生组件:绘制折线图
ui·信息可视化·交互·axure·原型·折线图
xy34534 天前
Axure 9.0 原生组件:让柱图实现动态交互(文本标签)
ui·交互·axure·原型·柱状图
梓贤Vigo5 天前
【Axure视频教程】拖动和滚动效果
交互·产品经理·axure·原型·教程
梓贤Vigo6 天前
【Axure原型分享】字母分类选择器
交互·产品经理·axure·原型·中继器
梓贤Vigo14 天前
【Axure高保真原型】卡片和表格间切换
交互·产品经理·axure·原型·中继器
梓贤Vigo15 天前
【Axure教程】拖动分组
交互·产品经理·axure·原型·教程