惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

云风的 BLOG
云风的 BLOG
Help Net Security
Help Net Security
Y
Y Combinator Blog
WordPress大学
WordPress大学
D
DataBreaches.Net
N
Netflix TechBlog - Medium
U
Unit 42
爱范儿
爱范儿
MyScale Blog
MyScale Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
博客园 - 司徒正美
Google DeepMind News
Google DeepMind News
D
Docker
H
Help Net Security
Stack Overflow Blog
Stack Overflow Blog
宝玉的分享
宝玉的分享
博客园_首页
Microsoft Security Blog
Microsoft Security Blog
Engineering at Meta
Engineering at Meta
Know Your Adversary
Know Your Adversary
P
Privacy & Cybersecurity Law Blog
P
Proofpoint News Feed
T
Tenable Blog
S
Schneier on Security
V
Vulnerabilities – Threatpost
V
V2EX
T
Tor Project blog
Security Latest
Security Latest
S
Securelist
G
Google Developers Blog
NISL@THU
NISL@THU
Schneier on Security
Schneier on Security
Webroot Blog
Webroot Blog
小众软件
小众软件
Google Online Security Blog
Google Online Security Blog
阮一峰的网络日志
阮一峰的网络日志
W
WeLiveSecurity
IT之家
IT之家
I
InfoQ
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
月光博客
月光博客
I
Intezer
T
The Blog of Author Tim Ferriss
C
Cisco Blogs
博客园 - 【当耐特】
The GitHub Blog
The GitHub Blog
Cloudbric
Cloudbric
Scott Helme
Scott Helme
The Cloudflare Blog
L
LINUX DO - 热门话题

夜行人

回家路上 第一期的直播演示项目 震动检测器 正能量 在线参观CodeLab Neverland 发布 CodeLab Adapter 3.3.1 DynamicTable 之 纸糊方向盘 CodeLab DynamicTable: 一个可实施的技术方案 CodeLab Insight 发布 Alpha 版 情人节 Home Assistant 周报 && IoT 周报 (02) Joplin: 关注隐私的 Evernote 开源替代软件 浏览器的未来与 Web 传感器 Home Assistant 周报 && IoT 周报 (01) 百宝箱(01) 论自由 介绍 WebThings Home Assistant 周报 && iot 周报 (00) 百宝箱(00) 毛姆读书心得 传世之作 周末徒步 CodeLab Adapter ❤️ Jupyter/Python 航班 躲雨 夏令营途中 [译]思想--作为一种技术 The future of coding 美国之行 三门问题的程序模拟 从Python转向Pharo https://blog.just4fun.site/post/iot/iot-open-source-projects/ Python异步编程笔记 https://blog.just4fun.site/post/iot/iot-open-source-hardware-community/ 万物积木化开发者社区 CodeLab ❤️ Blender Scratch3技术分析之云变量 API(第7篇) [译]对管道(Pipes)的偏爱 [译]提出正确的问题比得到正确答案更重要 蓝牙设备与Scratch3.0 创建你的第一个Scratch3.0 Extension Scratch3技术分析之项目内部数据(第6篇) Scratch3技术分析之社区 API(第5篇) Scratch3技术分析之User API(第4篇) Scratch3技术分析之项目主页API(第3篇) Scratch3技术分析之静态资源API(第2篇) Scratch3.0、micro:bit与Windows7 https://blog.just4fun.site/post/iot/zerynth-vs-micropython/ 核聚变、方所与半宅空间 可视化编程为何是个糟糕的主意 codelab.club周末聚会 关于codelab.club '下一件大事'是一个房间 Hungry Robot - Eat everything 编程作为一种思考方式 今日简史 史蒂夫·乔布斯传 罗素自选文集 https://blog.just4fun.site/post/edx/tianjin-scratch-ai/ https://blog.just4fun.site/post/edx/richie-cms-openedx/ 徒步武功山 WebUSB与micro:bit 积木化编程与3D场景 夜宿武功山顶 scratch3-adapter接入优必选Alpha系列机器人 https://blog.just4fun.site/post/edx/video-migration-note/ scratch3-adapter重构笔记 https://blog.just4fun.site/post/edx/edx-community-members/ 两种硬件编程风格的比较 使用micro:bit自制PPT翻页笔 柏拉图对话集 scratch3.0 + micro:bit 七月电影放映计划 非营利组织的管理 Screenly--用树莓派让任何屏幕变为可编程的数字标牌 以最佳实践开始你的Django项目 micro:bit与事件驱动 为Scratch3.0设计的插件系统(上篇) OCR应用一例 近两年读过的一些好书 blockly开发之使用python驱动浏览器中的turtle(2) 牛顿新传 文学理论入门 逻辑的引擎 人生的意义 blockly开发之生成并运行js代码(1) blockly开发之hello world(0) micro:bit使用笔记 神器之Termux https://blog.just4fun.site/post/iot/micropython-notes/ Cozmo what is this Scratch的前世今生 下段旅程 我行在远方 爆裂 途中杂记 https://blog.just4fun.site/post/edx/open-edx-startup/ cozmo系列之入门 - 有性格且可编程的机器人 PaperWeekly开发笔记 创业二三事
发布 Snap! 国内版本
种瓜 · 2024-04-15 · via 夜行人

文章目录

前言

我是 Snap! 的忠实用户。 之前围绕它写过不少文章

除了方便我自己使用, 在国内部署 Snap! 的另一个动机是: 许多 MicroBlocks 中文用户期待使用 Snap! 作为 MicroBlocks 的上位机。

开始使用

以下是中文版本的地址: https://snap.codelab.club

与官方版本的区别

MicroBlocks 国内版本一样, 我们希望将最新功能第一时间提供给用户。 因此基于开发分支部署。

当前官方版本的主要差别:

  • 新增以下扩展插件:
    • MicroBlocks
      • MicroBlock(BLE)
      • MicroBlock(serial)
      • MicroBlock IDE: 在 Snap 中嵌入 MicroBlocks IDE
    • 人工智能
      • 人脸检测
      • 姿态检测
      • 手部检测
    • 与其他系统的互操作(Python, MiroBlocks, JavaScript, Smalltalk…):
      • dynatalk
    • 其他插件
      • 二维码: 可用作课堂项目分享机制(移动端扫码即可打开)
      • Dictionary: 数据结构
      • 3D Beetle Geometry: 操控 3D turtle 绘制 3D 图形, 生成的 3D 图形可导出为 stl 文件 , 用于3D打印
  • 启用 Snap! 10 (下一代的 Snap!) 的部分强大功能:
    • 支持积木块与文本代码(lisp code)的双向转化(因此可引入大语言模型(如 ChatGPT)辅助编程)
    • 允许编辑所有积木块, 包括基础积木块(开启Blocks all the way)
  • 支持更多 url 参数

例子

我们给出了一些插件的使用案例:

FAQ

如何将 Scratch 项目转化为 Snap! 项目?

snapinator

如何与同伴分享项目?

有多种方式可以与同伴分享项目:

  1. 将项目保存到本地, 然后分享项目文件
  2. 将项目保存到本地, 然后将其托管到服务器上, 获得文件链接(如 https://wwj718.github.io/post/img/swimmer.xml), 可通过以下 3 种方式打开它(比较它们的区别)
    • https://snap.codelab.club/snap.html#open:https://wwj718.github.io/post/img/swimmer.xml
    • https://snap.codelab.club/snap.html#run:https://wwj718.github.io/post/img/swimmer.xml
    • https://snap.codelab.club/snap.html#run:https://wwj718.github.io/post/img/swimmer.xml&noRun

如何将项目嵌入到在线课程或文档中?

1
2
3
4
5
6
7
<!--
    allow="geolocation; microphone;camera; bluetooth; serial; accelerometer; encrypted-media; gyroscope; hid; midi; clipboard-write;"
    autoplay; picture-in-picture; web-share , allowfullscreen

    chatgpt allow 的所有选项 https://chatgpt.com/share/074becdb-e828-404d-9873-3806b3603d9f
-->
<iframe width="480" height="390" frameBorder=0 allowfullscreen allow="geolocation; microphone;camera; bluetooth; serial; accelerometer; encrypted-media; gyroscope; hid; midi; clipboard-write;" src="https://snap.codelab.club/snap.html#run:https://wwj718.github.io/post/img/swimmer.xml&noRun"></iframe>

(依然支持蓝牙和串口)

以上代码的效果是这样的(你可以自行修改其中的参数):

如何制作适配手机屏幕📱的项目 ?

将舞台区调整为手机屏幕尺寸(查看手机屏幕尺寸), 查阅得知 iphone X 的屏幕尺寸为 375 x 812, 由于浏览器本身有边框,我们将舞台区尺寸设为略小一些的尺寸 375 x 612

示例项目(iphone X)

移动端扫码访问:

iphone X 上的效果:

如何在移动端连接 MicroBlocks 设备?

  • Android 设备: 使用 Chrome 浏览器 (打开蓝牙)
  • iOS 设备: 使用 Bluefy 浏览器 (打开蓝牙)

示例项目

移动端扫码访问:

Bluefy 浏览器上的运行结果:

点击左上角的 “连接🔗” 图标:

通常情况下, 建议通过自定义积木扩展 Snap!

如果你想为 Snap! 引入新的 JavaScript 库, 参考 Snap! 使用笔记: JavaScript function

如何使用外接摄像头

许多项目都会用到外接 USB 摄像头, Snap! 目前暂未提供切换摄像头的功能. 不过你可以在浏览器里设置:

  • Chrome: 在地址栏输入 chrome://settings/content/camera
    • Arc 等基于 Chromium 内核的浏览器也是这个操作

参考