@googledevs: Raph 使用 Gemini 3.6 Flash 和 Nano Banana 即兴编码了一个电子墨水相框,帮助他的家人开启新的一天。了解…

X AI KOLs Following 工具

摘要

Google Developers 展示了一个名为 Glanceboard 的电子墨水相框演示,它使用 Gemini 3.6 Flash 和 Nano Banana 构建,可将日历数据转化为每日插图艺术。开源指南和 GitHub 仓库展示了如何使用 Google Antigravity 和现成硬件来构建它。

Raph 使用 Gemini 3.6 Flash 和 Nano Banana 即兴编码了一个电子墨水相框,帮助他的家人开启新的一天。 了解他如何使用 @Antigravity 实现,并按照开源指南打造你自己的版本。 https://t.co/CEWWbfX2q4 https://t.co/sHmMlRzvL0
查看原文
查看缓存全文

缓存时间: 2026/07/31 02:43

Raph 使用 Gemini 3.6 Flash 和 Nano Banana 通过 vibe coding 方式制作了一个电子墨水屏相框,帮助他的家人开启新的一天。

了解他如何使用 @Antigravity 完成这一项目,并按照开源指南打造属于你自己的版本。

https://t.co/CEWWbfX2q4 https://t.co/sHmMlRzvL0


google-gemini/glanceboard

来源:https://github.com/google-gemini/glanceboard

Glanceboard 演示

Glanceboard 是一款由 Gemini 驱动的电子墨水屏,帮助你开启美好一天

此演示展示了如何使用 Gemini 3.6 Flash 和 Nano Banana 将你的 Google 日历转化为电子墨水屏上的艺术作品。

只需一台电脑和一个 iCal 订阅源,Glanceboard 就能将你的日程安排、当地天气和自定义家庭角色转化为由 Nano Banana 生成的艺术画面。每天早上,它会读取你的日历并生成一幅全新的插画,让你了解今天有什么安排、需要带什么、穿什么。

没有屏幕干扰。没有通知推送。只有一幅安静的相框,让你轻松掌握今日要事。

注意: 此演示完全使用 Google Antigravity 通过 vibe coding 方式打造,并使用现成的硬件。

电子墨水屏上的 Glanceboard


工作原理

Glanceboard 在你的电脑(或 Raspberry Pi)上运行一个轻量级本地服务器。每隔几小时,它会:

  1. 通过 iCal 链接读取你的日历事件(日历数据 .ics 文件的通用标准)
  2. 获取你所在位置的当前天气
  3. 为你的角色构建创意提示词
  4. 使用 Nano Banana 根据以上信息生成一幅生动的每日计划插图
  5. 将图像进行抖动处理以适配 6 色电子墨水屏,并发送到你的显示器

显示器会轮询服务器以获取新图像——无需云账户。


所需设备

部件说明
Waveshare ESP32-S3 PhotoPainter (https://www.waveshare.com/esp32-s3-photopainter.htm)带木质相框的 7.3 英寸彩色电子墨水屏,内置 WiFi
USB-C 数据线用于供电(也可使用可选的锂电池)
一台电脑或 Pi用于运行 Glanceboard 服务器
Python 3.9+服务器运行所需
Node.js 18+构建 Web 仪表盘所需

无需焊接。无需排线。只需一块显示屏和一台服务器。

使用 Raspberry Pi 作为显示屏? 旧版 Pi + 独立电子墨水屏 HAT 方案仍然支持——请参阅 旧版 Pi 设置


功能特性

  • 每日 Nano Banana 艺术 — 你的日历事件将变为精美的每日计划插画
  • 6 种艺术风格 — 钢笔素描、时尚速写、水彩、像素艺术、漫画和日式水墨
  • 自定义角色 — 添加家人和宠物,并通过参考照片保持一致形象
  • 拖拽式小组件 — 将体育比分、股票行情、新闻、每日名言、邮件摘要、天气等添加到你的显示布局中
  • Google 日历 — 通过 iCal 链接连接(任何支持导出 iCal 的日历均可)
  • 天气感知 — 在屏幕上显示天气;角色会根据实际天气状况着装
  • 位置感知 — 根据你的位置生成符合地域特色的场景(悉尼不会下雪!)
  • 智能倒计时 — AI 扫描你的日历中的生日、旅行和节日,进行倒计时
  • Gemini 事件改写 — 将“上午 9 点 Tavi 图书馆书包“转化为“Tavi——记得带图书馆书包!“
  • 电子墨水屏优化 — 采用 Floyd-Steinberg 抖动算法适配 6 色 Spectra 面板
  • 智能调度 — 在你选择的时间自动生成,且仅在日历或天气变化时触发
  • 自定义提示词 — 可编辑图像生成提示词模板
  • 邮件摘要 — 可选的 Gmail 集成功能,显示未读邮件摘要(需要设置
  • 完全本地化 — 在你自己的机器上运行,无需云账户

快速开始

1. 克隆并安装

git clone https://github.com/google-gemini/glanceboard.git
cd glanceboard

# 安装服务器依赖
cd server
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cd ..

# 安装并构建 Web 仪表盘
cd web
npm install
npm run build   # 首次运行时会自动从模板创建 src/config.js
cd ..

2. 启动服务器

cd server
source venv/bin/activate
python3 -m uvicorn app:app --host 0.0.0.0 --port 8000

打开 http://localhost:8000 — Glanceboard 仪表盘将引导你完成设置:

  • API 密钥 — 输入你的 Google AI Studio 密钥(请参阅下文API 密钥设置
  • 日历 — 粘贴你的 iCal 链接
  • 位置 — 设置你的时区和地理位置以获取天气
  • 艺术风格 — 从 6 种风格中选择
  • 角色 — 添加你的家庭成员和宠物

3. 设置显示屏

请参阅下文显示屏设置指南,了解如何刷写并连接你的 PhotoPainter。

想要 24/7 全天候运行? 请参阅自托管指南,了解 systemd 服务配置、Raspberry Pi 安装说明以及将 Glanceboard 作为常驻家庭服务器的运行方法。

推荐模型

Glanceboard 支持多种 AI 图像生成模型:

模型提供商说明
Nano Banana ProGemini API推荐。 最佳画质、文字渲染和角色一致性。
Nano Banana 2Gemini API在速度与画质之间取得平衡

Glanceboard 还使用 Gemini Flash 3.6 提供智能功能:

  • 将日历事件改写为友好的语言
  • 生成符合天气状况的场景描述
  • 扫描日历以发现重要的即将到来的事件

API 密钥设置

Glanceboard 需要一个 Gemini API 密钥 来生成图像。

  1. 访问 aistudio.google.com/apikey (https://aistudio.google.com/apikey)
  2. 点击 创建 API 密钥 → 选择你的 Google Cloud 项目(或新建一个)
  3. 复制密钥(以 AIza... 开头)
  4. 在 Glanceboard 仪表盘的引导流程中粘贴该密钥

就这样。 密钥会本地存储在 server/data/config.json 文件中,并仅在服务端用于调用 Gemini API。


显示屏设置指南

第一步:刷写固件

  1. 通过 USB-C 将你的 PhotoPainter 连接到电脑
  2. Chrome 或 Edge 浏览器中打开 Glanceboard Web Flasher (https://raphdixon.github.io/glanceboard-firmware/)
  3. 点击 安装 Glanceboard 固件 并选择你的设备
  4. 等待刷写完成(约 2 分钟)
  5. 拔下并重新插入 USB-C 数据线以重启

第二步:连接 WiFi 并进行配置

  1. 重启后,显示屏会显示一个设置界面,其中包含名为 Glanceboard-XXXX 的 WiFi 名称
  2. 在手机或电脑上连接到 Glanceboard-XXXX WiFi 网络(无需密码)
  3. 设置页面会自动打开(或访问 http://192.168.4.1
  4. 输入你的 WiFi 网络名称密码(开放式网络可留空密码)
  5. 从 Glanceboard 仪表盘粘贴显示图像链接(位于设置 → 电子墨水屏设置 → 📋 复制链接)——格式类似于 http://YOUR_SERVER_IP:8000/images/latest_display.bmp
  6. 选择轮询间隔(显示屏刷新的频率)
  7. 点击保存并连接

设备将重新启动,连接你的 WiFi,并开始轮询获取图像。显示屏将在约 60 秒内完成更新。

提示: 之后你可以通过同一网络上的任何浏览器访问设备的 IP 地址来重新配置。设置完成后,IP 地址会显示在屏幕上。

使用 Raspberry Pi 作为显示屏? 旧版 Pi + 独立电子墨水屏 HAT 方案仍然支持——请参阅旧版 Pi 设置


系统架构

本地服务器(基于 Python 3.11+ 的 FastAPI)
──────────────────────────────────────────────────────
  server/app.py
  ├── /api/config        GET/POST — 设置
  ├── /api/generate      POST — 触发图像生成
  ├── /api/status        GET — 生成状态
  ├── /api/preview       GET — 预览提示词
  ├── /images/*          静态文件 — 生成的显示图像
  └── /*                 静态文件 — 构建后的 Vite SPA 仪表盘

  data/config.json       本地配置(API 密钥、日历等)
  data/images/           生成的显示图像

  调度器(APScheduler)
  └── 每 15 分钟运行一次,在用户选择的时间生成
      仅在日历或天气变化时触发

  Web 仪表盘(Vite SPA)
  ├── 引导向导
  ├── 设置面板
  ├── 拖拽式小组件布局编辑器
  ├── 角色管理器
  └── 实时显示屏预览
──────────────────────────────────────────────────────
         │                              │
         ▼                              ▼
  ESP32-S3 PhotoPainter         AI 提供商
  轮询 /images/latest_*        Gemini API
  更新电子墨水屏               (Gemini Flash / Pro)

  Gemini Flash 3.6
  • 将日历事件改写为友好的文本
  • 生成符合天气状况的场景提示词
  • 扫描日历以发现重要的倒计时事件

项目结构

glanceboard/
├── server/                     # 本地 Python 服务器(FastAPI)
│   ├── app.py                  # 所有后端逻辑 + API 端点
│   ├── requirements.txt        # Python 依赖
│   ├── requirements-email.txt  # 可选的邮件小组件依赖
│   └── data/                   # 运行时数据(已加入 gitignore)
│       ├── config.json          # 你的设置(已加入 gitignore)
│       ├── config.example.json  # 配置模板
│       ├── gmail_credentials.json # Gmail OAuth 凭据(已加入 gitignore,可选)
│       ├── gmail_token.json     # Gmail OAuth 令牌(已加入 gitignore,可选)
│       └── images/              # 生成的显示图像(已加入 gitignore)
├── web/                        # 前端(Vite SPA)
│   ├── index.html              # 仪表盘 + 落地页
│   └── src/
│       ├── main.js             # 应用逻辑
│       ├── style.css           # 样式
│       ├── config.js           # Firebase 配置(已加入 gitignore,仅用于托管版本)
│       └── config.example.js   # 配置模板
├── functions/                  # Cloud Functions(用于托管版本)
│   ├── main.py                 # 后端逻辑(Firebase 变体)
│   └── requirements.txt        # Python 依赖
├── firmware/                   # ESP32-S3 PhotoPainter 文档
│   └── README.md               # SD 卡及固件设置
├── pi/                         # 旧版 Raspberry Pi 脚本
│   ├── LEGACY_PI_SETUP.md      # Pi 设置指南
│   ├── install.sh              # 一键安装脚本
│   └── display_update.py       # 显示屏更新脚本
├── firestore.rules             # Firestore 安全规则(托管版本)
├── storage.rules               # Storage 安全规则(托管版本)
├── firebase.json               # Firebase 配置(托管版本)
├── SELF_HOSTING.md             # 在自己服务器上 24/7 运行的指南
├── FIREBASE_DEPLOY.md          # Firebase 部署指南(托管版本)
├── EMAIL_SETUP.md              # 可选的邮件小组件设置指南
└── LICENSE                     # Apache 2.0 许可证

邮件小组件(可选)

Glanceboard 可以选择在显示屏上显示未读 Gmail 的摘要。这需要设置你自己的 Google Cloud OAuth 凭据——请参阅 EMAIL_SETUP.md 获取分步指南。

邮件小组件:

  • 仅读取主题行和发件人姓名(不读取邮件正文)
  • 通过 Gemini 将其汇总为简短摘要
  • 完全在你自己的机器上运行——数据不会离开你的服务器
  • 完全可选——所有其他功能无需它即可正常工作

贡献

欢迎贡献!请参阅 CONTRIBUTING.md 了解如何贡献以及贡献者许可协议(CLA)流程的详细信息。


许可证与免责声明

版权所有 2026 Google LLC

所有软件均依据 Apache License 2.0(Apache 2.0)授权;除非遵守 Apache 2.0 许可证,否则您不得使用此文件。您可以在以下网址获取 Apache 2.0 许可证的副本:https://www.apache.org/licenses/LICENSE-2.0

所有其他材料均依据 Creative Commons Attribution 4.0 International License(CC-BY)授权。您可以在以下网址获取 CC-BY 许可证的副本:https://creativecommons.org/licenses/by/4.0/legalcode

除非适用法律要求或书面同意,根据 Apache 2.0 或 CC-BY 许可证在此分发的一切软件和材料均按“原样“分发,不附带任何明示或暗示的保证或条件。请参阅相应许可证以了解管理权限和限制的具体语言。

这不是 Google 的官方产品。


由 Raph Dixon (https://raph.plus) 使用 Antigravity (https://antigravity.google/) 和 Gemini Flash 3.6 (https://ai.google.dev/gemini-api/docs/models/gemini-3.6-flash) 倾心打造 ❤️

相似文章

Gemini Omni 和 Gemini 3.5 的 9 个实际演示

Google AI Blog

Google 展示了其新模型 Gemini Omni(通过对话进行视频生成和编辑)和 Gemini 3.5 Flash(用于复杂任务的智能体模型)的 9 个演示,这些演示在 Google I/O 2026 上呈现。

体验 Gemini 2.0 Flash 原生图像生成

Google DeepMind Blog

Google 向所有开发者开放 Gemini 2.0 Flash 原生图像生成功能,支持多模态文本和图像输出,可用于故事创作、对话式图像编辑以及需要世界理解和文本渲染的应用。