Skip to content

星云链 DApp 客户端开发框架,轻量,易用 | Lightweight and friendly util library for DApp development on Nebulas Blockchain.

License

Notifications You must be signed in to change notification settings

NasaTeam/Nasa.js

Repository files navigation

Nasa.js

Lightweight and friendly util library for DApp development on Nebulas Blockchain.

星云链 DApp 客户端开发框架,轻量,易用。

使用说明

安装

  • 可以使用 npm 安装:

     $ npm install nasa.js
  • 也可以在页面中直接加载 CDN 版本:

     <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/nasa.min.js"></script>

文档

  • 安装和使用 —— 如何把 Nasa.js 整合到自己的作品中
  • API 文档 —— 详尽的 API 使用说明
  • 功能演示 —— 无需安装,在线体验 Nasa.js 的各项功能

价值是什么?

星云官方 JS SDK(neb.js 和 nebPay)功能完备,我为什么还要使用 Nasa.js?

  • 平衡:Nasa.js 追求 “体积” 与 “功能” 之间的最佳平衡——用小巧的体积覆盖 90% 的 DApp 功能需求,满足你对网页性能的极致追求。

  • 友好:专为 Web 前端工程师设计,把常见场景封装为高层 API,符合你的直觉和开发习惯。

功 能 neb.js
完整版
neb.js
基础版
nebPay Nasa.js
完整对接星云 HTTP 接口
部署合约
向指定地址转账 [1] [1] [2]
调用合约(写入数据) [1] [1]
调用合约(查询数据)
查询交易结果(通过 txHash)
查询交易结果(通过交易流水号)
手机页面唤起手机钱包 [4]
手机钱包扫码交易 [2]
获取当前用户钱包地址 [5]
管理合约地址与当前环境
分析当前浏览器环境
常用工具方法 [6]
文件体积 [9] 155 KiB 9.7 KiB 21 KiB < 30 KiB
  • [1] 此功能通过唤起 “星云钱包 Chrome 扩展” 或 “星云手机钱包 App” 来实现。
  • [2] Nasa.js 暂未直接实现此功能。但由于 Nasa.js 打包了完整的 nebPay,开发者目前需要直接使用 nebPay 来实现此功能。
  • [4] 在手机浏览器(iOS Safari 或 Android Chrome 等)中调用 “星云手机钱包 App” 完成交易。
  • [5] 此功能依赖 “星云钱包 Chrome 扩展” 实现。
  • [6] 包括合约管理、判断地址/TxHash/交易流水号是否合法等工具方法。
  • [9] 包含所有外部依赖的 dist 文件在 min + Gzip 之后的体积。

谁在用?


星云水浒

🏆 星云激励计划周亚军

星云链定时器

🌟 星云激励计划优秀奖

星云 Wiki

🌟 星云激励计划优秀奖

Nasa.js Demo

💡 星云激励计划新应用奖

表白墙斯密达

💡 星云激励计划新应用奖

我是预言帝

💡 星云激励计划新应用奖

常见问题

Nasa.js 到底是 “library” 还是 “框架”?

Nasa.js 提供了丰富的 API,你可以把它当作库来用,只在你需要的时候调用某几个 API。你也可以让它帮你管理合约地址和当前环境,此时 Nasa.js 将为你提供更多便利,就像一个框架那样。

未来,Nasa.js 将为常见开发场景提供更完整的解决方案,成为一个更加称职的开发框架。

Nasa.js 可以独立使用吗?需要同时加载其它依赖吗?

Nasa.js 的 dist 文件已经把所有外部依赖都打包进来了,因此可以独立使用。

我的 DApp 已经加载了 neb.js 和 nebPay 了,可以同时使用 Nasa.js 吗?

在同一页面中同时加载这三者,并不会发生冲突,但这样对网页性能并没有好处。优化建议如下:

  • 如果你的 DApp 加载 neb.js 只是为了向合约查询数据,则建议把相关代码迁移到 Nasa.js。这样你的 DApp 就不需要加载 neb.js 了。

  • 由于 Nasa.js 本身已经打包了 nebPay 的源码,因此你不需要重复加载 nebPay。使用 Nasa.nebPay 即可以取代你代码中的 nebPay 实例,详情参见 此文档

我需要的某个功能 Nasa.js 还不支持,怎么办?

来给 Nasa.js 提 issue 吧!


参与开发

社区

微信群

有任何关于 Nasa.js 的疑问,欢迎加群讨论!请加群主微信号 130-5994-1270,群主会拉你入群。

活动

贡献者  

姓名 贡献 [*] 备注
@cssmagic 💻 🚇 ⚠️ 📖 ✅ ... 创始人
@newraina 💻 🚇 👀 🤔 开发团队成员
@salmonx(风) 🐛
@smallke(夏日小可) 🐛
希望之石 🤔
@Heasn 🤔
bokehlicia 🎨 Logo 图片作者

[*] These legends follow the emoji-key of "all-contributors" specification. Contributions of any kind are welcome!


Thanks

Nasa.js is based on these open source projects:

Nasa.js team is using JetBrains IDE (WebStorm) with Open Source License:

  • WebStorm Logo

License

LGPL-3.0

About

星云链 DApp 客户端开发框架,轻量,易用 | Lightweight and friendly util library for DApp development on Nebulas Blockchain.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published