Pyrite IDE 1.0 版本正式发布!立即下载

打造 优雅现代的
MicroPython 生态载体

多端一致,易学易用,社区驱动,场景丰富的 MicroPython 生态拓展计划。

IDE / SDK 与 CLI

从第一行代码,到一整批设备。

Pyrite 把编辑、设备、扩展、版本控制与交付放进同一套工具链。 图形界面照顾日常开发,CLI 把同一套能力带进 Shell 与自动化。

IDE / SDK

面向日常开发的完整工作台

稳定连接真实设备

通过串口或 WebREPL 连接标准 MicroPython 设备,并用 raw-paste 提供稳定的板载文件操作。

串口 / WebREPL / raw-paste 文件通道 / 上传与下载进度

Serial
WebREPL
lib/sensor.py84%
raw-paste

为长时间编辑而生

意外关闭后保留未保存内容;语言服务器可经 WebSocket 或 Stdio 接入,百万行级文件仍可流畅编辑。

未保存状态持久化 / WebSocket / Stdio LSP / 1M+ 行流畅编辑

main.py
1,048,576 linessaved locally
WebSocket
Language Server
Stdio

Python 插件生态

应用携带完整 Python 运行时,通过 PyriteSDK 调用 IDE 能力,并覆盖权限、生命周期与打包流程。

内置 Python Runtime / 完整 PyriteSDK / 权限 / 生命周期 / 打包

Python Runtime
PyriteSDK
权限
生命周期
打包
plugin.py → IDE capability

分层 Stubs

Stubs Profile 与 Layer 可以由插件提供、叠加并直接注入语言服务器,补全与类型提示随目标设备变化。

多层级 Stubs / 插件提供 Profile / Layer / 直接注入 LSP

01Base MicroPython
02ESP32 Profile
03sensor-kit Layer
injected into LSP
read_temperature(pin: int) → float

✓ signature resolved

应用内 Git 工作区

内嵌 libgit2,无需预装 Git。查看分支、状态与 diff,跟踪远端分支、处理切换冲突,并在状态栏持续显示分支状态。

分支 / 状态 / diff / Tracking branch / 储藏 / 迁移 / 强制迁出

origin/feat-devicemain
feat-device↑2↓1
+
+

checkout conflict

stash / migrate / force

桌面级终端

Windows、Linux 与 macOS 上可运行复杂 TUI,并提供复制粘贴、终端切换与清屏快捷键。

复杂 TUI / 完整快捷键 / Android 暂不提供

htop · pyrite-shell
CPU
RAM
ROM

PID CMD

44 repl

57 sync

81 lsp

⌘C⌘V⌃⇥⌘K

一套跨平台架构

Flutter、Rust 与跨平台 Python Runtime 共同支持 Android、Windows、macOS 与 Linux。

Android / Windows / macOS / Linux / Flutter + Rust + Python

Windows
macOS
Linux
Android
FlutterRustPython Runtime

主动抢占 REPL

通过有效干预尽可能避开 boot.py 与 main.py 对 REPL 的阻塞;多次尝试失败后明确交还用户控制。

自动干预启动流程 / 多次尝试 / 失败后手动接管

boot.pyinterrupt 01
main.pyinterrupt 02
user taskinterrupt 03

MicroPython v1.24

>>> _

REPL control acquired

CLI

面向刷入、文件系统与诊断的自动化工具

可追溯的批量刷入

把编译、校验、重试、批量执行、pre-check、manifest 与增量刷入收拢为一条可靠流水线。

编译 / 校验 / 重试 / 批量 / manifest / 增量 / 按版本统计 Feat 可用性

1

pre-check

2

compile

3

verify

4

flash

v1.228 / 8
v1.233 / 3
v1.241 / 1
batch8 / 12

保留结构的条件编译

基于 libcst 改写 Python 源码,尽量不破坏原有行号与文件结构,让错误仍然容易定位。

libcst / 保留行号与结构 / 便于追溯和调试

source.py

01 import board

02 # if FEAT_WIFI

03 run()

04 return 0

libcst

output.py

01 import board

02 wifi = WLAN()

03 run()

04 return 0

完整文件系统工作流

覆盖常用 fs 命令、PC 与设备间的双向挂载,以及从挂载根目录触发 main.py 的 mount-run。

ls / cat / put / get / rm / mv / cp / tree / 双向挂载不可同时启用

PC
src/
main.py
lib/
mountmount-run
DEVICE
/
main.py
boot.py
lscatputgetrmmvcptree

诊断与 traceback 映射

检查软硬件 ID、版本、平台、复位原因、RAM/ROM 与运行时能力,并把 traceback 映射回源文件。

板侧信息 / 资源与能力诊断 / traceback 源码映射

platform

esp32s3

reset

WDT

firmware

v1.24.1

board id

A8:03

RAM42%
ROM71%

Traceback

board:/main.mpy:18

mapped

src/main.py:42

runtime capability: 17 / 18

适合 Shell 的输出

JSONL 输出让命令可以被 shell、CI 与其他自动化工具逐行消费,不需要解析面向人的表格。

JSONL / 逐行处理 / 易于组合自动化

{"ts": "xx:xx:xx.xxx", "level": "TRACE", "module": "cli.utils.config", "msg": "加载配置文件: E:\pyrite-cli\.pyrite_config.json"}{"ts": "xx:xx:xx.xxx", "level": "DEBUG", "module": "cli.utils.flash.core", "msg": "已捕获设备欢迎信息: ESP-ROM:xxxxxxxxxxxxx{"ts": "14:41:08.305", "level": "INFO", "module": "cli.utils.flash.flash", "msg": "进入交互式 REPL (端口=COM3)"}
Shell
CI
Automation

终端优先,如此简单

uvx pyrcli project new hello-pyrite
Terminal
$ pyrcli project new hello-pyrite
INFO [cli.project.scaffold] 正在查询可用平台...
INFO [cli.project.scaffold] 可用平台查询完成,共 13 个
docstubs
1.28.0
INFO [cli.project.stubs] 下载存根: micropython-v1_28_0-docstubs (23 个文件, 4 线程)
下载中: 100%|████████████████| 23/23 [00:03<00:00, 6.84file/s]
INFO [cli.project.scaffold] 已准备 23 个.pyi文件到
/home/user/.pyrcli/stubs/micropython-v1_28_0-docstubs
INFO [cli.project.scaffold] VS Code 配置: .vscode/settings.json
INFO [cli.project.scaffold] Pyrite stubs 配置: .pyrite_config.json

使用 构建

质量保证的。

活跃维护,接受贡献。

完全开源

在 GitHub 上可访问全部源代码

立刻尝试

现在就使用 Pyrite 开始您的下一个项目

现在就开始构建

使用 Pyrite 开始你的下一个项目