使用TypeScript和CSS编写的原生应用

Hacker News Top 工具

摘要

本文介绍一个GitHub仓库,其中包含示例应用和工具,用于GeaStack框架。该框架可使用TypeScript和CSS构建面向网页、嵌入式系统和GeaOS的原生应用。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/09/22 21:53

geastack/examples 来源:https://github.com/geastack/examples

GeaStack 示例

适用于GeaStack的示例应用与工具。

此仓库是模拟器、嵌入式目标、GeaOS、Apple目标、VS Code/Cursor扩展以及营销演示所使用的应用库。

每个示例都是一个包含 gea 清单的 package.json 的小型包。

内容概览

路径用途
apps/*Gea应用。多数是面向Web、ESP32和/或GeaOS的TSX应用。
apps/*/package.json应用清单、目标兼容性、脚本和启动器元数据。
tools/dialer-browser适用于拨号器工作流的小型浏览器端辅助工具。
package.json示例集合的工作区标记。
docs目录与贡献指南。

快速开始

运行单个示例的检查:

cd apps/watch
npm install
npm run check
npm run build

部分示例包含测试,主要用于布局或设备设置。可在应用文件夹中使用 npm test 运行。

Web循环由模拟器驱动,模拟器位于独立仓库:geastack/simulator

其脚本从应用项目根目录读取应用,路径通过 GEA_APPS_ROOT 指定——即此仓库或您自己的仓库。该变量无默认值,需设置或通过 --app-dir 参数指定。两个检出位置无需相邻。

cd /path/to/simulator
GEA_APPS_ROOT=/path/to/examples ./targets/web/dev-web.mjs watch  # 开发循环
GEA_APPS_ROOT=/path/to/examples ./targets/web/build-web.sh watch # Web构建
./targets/web/dev-web.mjs --app-dir /path/to/examples/apps/watch # 或指定单一应用

通过Gea CLI刷写兼容开发板:

npx gea flash watch --board
npx gea flash watch --board --monitor

文档

应用清单基础

每个可构建的应用应在 package.json 中包含 gea 字段:

{
  "gea": {
    "id": "watch",
    "name": "Watch",
    "entry": "index.tsx",
    "runtime": "gea",
    "targets": {
      "web": true,
      "esp32": true,
      "geaos": true
    }
  }
}

此清单被模拟器、嵌入式开发板脚本、GeaOS、Apple目标及IDE扩展使用。请保持其准确性。

维护说明

  • 保持示例精简专注。优秀的示例应清晰验证单一功能。
  • 优先使用框架共享API,避免在示例内进行特定目标的特殊处理。
  • 为包含非平凡逻辑、物理模拟或解析功能的示例添加测试。
  • 当应用被添加、重命名、隐藏或目标兼容性变更时,请更新目录文档。

许可证

MIT(详见 LICENSE)。

您可基于此开发闭源产品。唯一采用不同许可证的GeaStack代码是嵌入式开发板支持包(targets@geastack/chips,GPL-3.0-only):通过这些组件分发闭源固件需获取商业许可。

商业条款、技术支持及托管构建服务请联系 [email protected]

相似文章

Zero-native – 使用 Web UI 构建原生桌面应用

Hacker News Top

zero-native 是一个全新框架,允许开发者利用 Web UI 技术和 Zig 编程语言构建原生桌面应用。它强调极小的二进制体积、快速的重新构建能力,以及无需沉重运行时开销即可直接访问 C 库。