# tpc_resource
**Repository Path**: pommejason/tpc_resource
## Basic Information
- **Project Name**: tpc_resource
- **Description**: 三方组件资源汇总
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 255
- **Created**: 2023-09-25
- **Last Updated**: 2023-09-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
开源三方库资源汇总
##### 本文收集了一些已经发布在OHPM(OpenHarmony三方组件中心仓)上的三方组件资源,欢迎应用开发者参考和使用,同时也欢迎开发者将自己开源在OHPM上的三方组件,提PR补充到列表当中。
## JS/ArkTS语言
### UI
- [@ohos/pulltorefresh](https://gitee.com/openharmony-sig/PullToRefresh) - 支持设置内置动画的各种属性,支持设置自定义动画的下拉刷新、上拉加载组件
- [@ohos/textlayoutbuilder](https://gitee.com/openharmony-sig/TextLayoutBuilder) - TextLayoutBuilder是一个可定制任意样式的文本构建工具,包括字体间距、大小、颜色、布局方式、富文本高亮显示等
- [@ohos/overscroll-decor](https://gitee.com/openharmony-sig/overscroll-decor) - UI滚动组件
- [@ohos/mpchart](https://gitee.com/openharmony-sig/ohos-MPChart) - mpchart是一个包含各种类型图表的图表库,主要用于业务数据汇总,例如销售数据走势图,股价走势图等场景中使用,方便开发者快速实现图表UI,mpchart主要包括曲线图、柱形图、饼状图、蜡烛图、气泡图、雷达图等自定义图表库
- [@ohos/material-dialogs](https://gitee.com/openharmony-sig/material-dialogs) - 是自定义对话框库
- [@ohos/materialprogressbar](https://gitee.com/openharmony-sig/MaterialProgressBar) - 是一个自定义ProgressBar效果的库
- [@ohos/roundedimageview](https://gitee.com/openharmony-sig/RoundedImageView) - RoundedImageView支持圆角(和椭圆或圆形)的快速 ImageView,它支持许多附加功能,包括椭圆、圆角矩形、ScaleTypes 和 TileModes
### 动画
- [@ohos/lottie](https://gitee.com/openharmony-tpc/lottieETS) - 适用于OpenHarmony的动画库,功能类似于Java组件lottie、AndroidViewAnimations、Leonids等库
- [@ohos/svg](https://gitee.com/openharmony-sig/ohos-svg) - svg是一个SVG图片的解析器和渲染器,可以解析SVG图片并渲染到页面上,还可以动态改变SVG的样式
### 网络
- [@ohos/axios](https://gitee.com/openharmony-sig/axios) - 一个基于 promise 的网络请求库,可以运行 node.js 和浏览器中。本库基于Axios 原库进行适配,使其可以运行在 OpenHarmony,并沿用其现有用法和特性
### 图片
- [@ohos/imageknife](https://gitee.com/openharmony-tpc/ImageKnife) - 更高效、更轻便、更简单的图像加载缓存库,能力类似java组件glide、disklrucache、glide-transformations、fresco、picasso、uCrop、Luban、pngj、Android-Image-Cropper、android-crop等库
- [@ohos/xmlgraphicsbatik](https://gitee.com/openharmony-tpc/XmlGraphicsBatik) - 用于处理可缩放矢量图形(SVG)格式的图像,例如显示、生成、解析或者操作图像
- [@ohos/gif-drawable](https://gitee.com/openharmony-sig/ohos_gif-drawable) - 基于Canvas进行绘制,支持gif图片相关功能
- [@ohos/subsampling-scale-image-view](https://gitee.com/openharmony-sig/subsampling-scale-image-view) - 视图缩放组件
- [@ohos/imageviewzoom](https://gitee.com/openharmony-sig/ImageViewZoom) - ImageViewZoom 支持加载 Resource 或 PixelMap 图片,支持设置图像显示类型功能,支持缩放功能,支持平移功能,双击放大功能,可以监听图片大小,资源变化事件,支持清除显示图片功能
### 多媒体
- [@ohos/ijkplayer](https://gitee.com/openharmony-sig/ohos_ijkplayer) - 一款基于FFmpeg的视频播放器
### 数据存储
- [@ohos/disklrucache](https://gitee.com/openharmony-sig/ohos_disklrucache) - 专门为OpenHarmony打造的一款磁盘缓存库,通过LRU算法进行磁盘数据存取
- [@ohos/fileio-extra](https://gitee.com/openharmony-sig/ohos_fileio-extra) - 提供了更丰富全面的文件操作功能
- [@ohos/mmkv](https://gitee.com/openharmony-tpc/MMKV) - 一款小型键值对存储框架
- [@ohos/dataorm](https://gitee.com/openharmony-sig/dataORM) - dataORM是一个具有一行代码操作数据库或链式调用,备份、升级、缓存等特性的关系映射数据库
- [@msgpack/msgpack](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/msgpack-javascript) - MessagePack是一个非常高效的对象序列化库
- [@ohos/arangojs](https://gitee.com/openharmony-sig/arangojs) - 是一款适用于OpenHarmony环境的ArangoDB数据库javascript版驱动
- [@ohos/protobufjs](https://gitee.com/openharmony-tpc/protobuf/tree/1.x/) - ProtoBuf(protocol buffers) 是一种语言无关、平台无关、可扩展的序列化结构数据的方法,它可用于(数据)通信协议、数据存储等
- [memory-cache](https://github.com/ptarjan/node-cache) - 内存缓存
### 文件数据与传输
- [@ohos/mqtt](https://gitee.com/openharmony-sig/ohos_mqtt) - 使应用程序能够连接到MQTT代理以发布消息、订阅主题和接收发布的消息。
- [@ohos/liveeventbus](https://gitee.com/openharmony-sig/LiveEventBus) - 消息总线,支持Sticky,支持跨进程,支持跨应用广播
- [@ohos/mbassador](https://gitee.com/openharmony-sig/ohos_mbassador) - 一个发布订阅模式的三方组件
- [eventbusjs](http://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/EventBus) - eventbusjs主要功能是消息订阅发送
- [js-sha256](http://github.com/emn178/js-sha256) - sha-256/sha-224 hash算法
- [hi-base32](http://github.com/emn178/hi-base32) - base32 encode/decode
- [js-md5](http://github.com/emn178/js-md5) - A simple MD5 hash function for JavaScript supports UTF-8 encoding.
- [js-sha1](http://github.com/emn178/js-sha1) - A simple SHA1 hash function for JavaScript supports UTF-8 encoding.
- [js-md2](http://github.com/emn178/js-md2) - A simple MD2 hash function for JavaScript supports UTF-8 encoding.
- [brotli-js](http://gitee.com/openharmony-sig/brotli) - 一种通用无损压缩算法
- [cbor-js](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/cborjsDemo) - 是OpenHarmony系统下使用cbor-js的示例,cbor-js是以简明二进制对象表示 (CBOR) 数据格式 ( RFC8949 )编码和解析数据的Javascript开源库
- [soundex-code](https://gitee.com/openharmony-tpc/commons-codec) - 是一个OpenHarmony系统下使用各种编解码的示例,包含各种格式的简单编码器和解码器, 例如 Base64 Base32 等除了这些广泛使用的编码器和解码器之外,编解码器包还维护了一组语音编码实用程序
- [pako](https://github.com/nodeca/pako) - pako是一个JavaScript库,支持deflate和gzip压缩解压功能
- [lz4js](https://github.com/Benzinga/lz4js) - Lz4js是一个JavaScript库,实现Lz4压缩/解压库
- [snappyjs](https://github.com/zhipeng-jia/snappyjs) - SnappyJS是一个JavaScript库,实现Snappy压缩/解压库
- [@ohos/okio](https://gitee.com/openharmony-tpc/okio) - okio是一个通过数据流、序列化和文件系统来优化系统输入输出流的能力的库
### 安全
- [@ohos/crypto-js](https://gitee.com/openharmony-sig/crypto-js) - 加密算法类库,目前支持MD5、SHA-1、SHA-256、HMAC、HMAC-MD5、HMAC-SHA1、HMAC-SHA256、PBKDF2等
### 工具
- [@ohos/zxing](https://gitee.com/openharmony-tpc/zxing) - 一个解析/生成二维码的组件,能力类似java组件zxing,Zbar、zxing-android-embedded、BGAQRCode-Android等
- [js-tokens](http://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/js-tokens) - js-tokens 是一个微型JavaScript的分词器。小巧的、正则表达式驱动的、宽松的、几乎符合规范的 JavaScript 标记器
- [easy-relpace](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/Easyrelpace) - 使用Levenshtein 距离算法测量两个字符串之间的差异。 Compare Text替换字符串
- [hex-encode-decode](https://github.com/tiaanduplessis/hex-encode-decode) - Hex encode & decode string
- [text-encoding](https://github.com/inexorabletash/text-encoding) - 在JavaScript中对二进制数据的文本数据和类型化数组缓冲区进行编码和解码
- [qr-code-generator](https://gitee.com/openharmony-sig/qr-code-generator) - 二维码生成器
- [@ohos/juniversalchardet](https://gitee.com/openharmony-sig/juniversalchardet) - 字符编码识别组件
- [@zxing/text-encoding](https://github.com/zxing-js/text-encoding) - 在JavaScript中对二进制数据的文本数据和类型化数组缓冲区进行编码和解码
- [adler-32](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/Adler32Demo) - 一个在js环境中实现ADLER-32的校验和算法的三方库
- [dayjs](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/dayjs) - dayjs 是一个轻量的处理时间和日期的 JavaScript 库
- [@ohos/jsonschema](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/dayjs) - jsonschema是一个轻便易用的JSON模式验证器
- [validator](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/validator) - validator.js是字符串验证器和清理器的库
- [percentage-regex](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/percentage-regex) - percentage-regex是百分比验证的库
- [leap-year](https://github.com/sindresorhus/leap-year) - 判断闰年的库
- [time-ampm](https://github.com/ipostol/time-ampm) - 获取24小时时间库
- [imagetype](https://github.com/Ackar/node-imgtype) - 获取图片类型库
- [randomColor](https://github.com/davidmerfield/randomColor) - 生成随机颜色的库
- [@ohos/util_code](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/utilCode) - utilCode是一个通用工具的示例,包含温度转换、正则校验、图片处理、坐标转换、和颜色获取等常用功能
- [xslt-processor](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/xslt-processor) - 支持使用与XML文档配对的XSLT样式表将XML文档转换成多中文本格式(HTML、Text等)的库
- [@ohos/pinyin4js](https://gitee.com/openharmony-tpc/pinyin4js) - 一款汉字转拼音的JavaScript开源库
- [EventEmitter3](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/Eventmitter3Demo) - EventEmitter3是一款高性能EventEmitter,支持添加监听事件,监听一次性事件,发送事件,移除事件,统计监听事件的个数,统计监听事件的名称
- [he](https://github.com/mathiasbynens/he) - 支持对字符串进行编解码
- [pcx-js](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/pcx-js) - 提供了PCX图像格式解码的能力
- [@isrc/fuse.js](https://gitee.com/pommejason/isrc_fuse.js) - Fuse.js是一款轻量级的JavaScript模糊搜索库,提供了模糊搜索和搜索排序功能
### 其他
- [@ohos/arouteronactivityresult](https://gitee.com/openharmony-tpc/arouter-api-onActivityResult) - 用于在各种应用或页面间的跳转和页面间的数据传递
- [ahocorasick](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/ahocorasick) - ahocorasick是Aho-Corasick字符串搜索算法的实现,能够高效的进行字符串匹配
- [bignumberjs](https://github.com/MikeMcl/bignumber.js) - A JavaScript library for arbitray-precision decimal and non-decimalarithmetic
- [diff](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/jsDiffDemo) - JavaScript文本差异的工具库
- [is-png](https://gitee.com/openharmony-sig/is-png) - is-png是一个判断图片格式的库,根据图片的文件数据,判断图片是否为png格式
- [is-webp](https://gitee.com/openharmony-sig/is-webp) - is-webp是一款根据文件数据,判断图片是否是webp格式的库
- [mustache](https://gitee.com/openharmony-sig/jmustache
) - 是mustache模板系统的零依赖实现,通过使用散列或对象中提供的值来扩展模板中的标签
- [leven](https://github.com/sindresorhus/leven) - Measure the difference between two strings using the Levenshtein distance algorithm
- [caverphone](https://github.com/tcort/caverphone) - A JavaScript implementation of the Caverphone 2.0 (aka Caverphone Revised) phonetic matching algorithm
- [metaphone](https://github.com/words/metaphone) - Metaphone phonetic algorithm
- [behaviortree](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/behaviorTree) - 是行为树 javascript 版实现
- [@ohos/coap](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/behaviorTree) - ohos_coap是基于libcoap v4.3.1版本,封装napi接口,给上层ts提供coap通信能力的三方库
- [gcoord](https://github.com/hujiulong/gcoord) - gcoord(geographic coordinates)是一个处理地理坐标系的JS库,用来修正百度地图、高德地图及其它互联网地图坐标系不统一的问题
- [caverphone](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/CaverPhone) - CaverPhone算法(语音匹配算法)的JavaScript实现,规则为:将关键字转换为小写,移除不是a-z的字符,按照规则替换指定字符(如字符串起始、结束,文本中包含cq等),在结尾放置6个1,返回前十个字符,具体参照CaverPhone算法规则
- [adler-32](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/Adler32Demo) - 是一个在js环境中实现ADLER-32的校验和算法能力的库
## C/C++语言
[C/C++三方库资源汇总](https://gitee.com/openharmony-sig/tpc_c_cplusplus/blob/master/docs/thirdparty_list.md)
### 音视频
- [vorbis](https://gitee.com/openharmony-sig/vorbis) - 一种通用音频和音乐编码格式组件
- [opus](https://gitee.com/openharmony-sig/opus) - Opus是一个开放格式的有损声音编码格式
- [flac](https://gitee.com/openharmony-sig/flac) - 无损音频编解码器
- [libmp3lame](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/lame) - 是开源mp3编码库,使用MPGLIB解码引擎,专门用于编码 mp3
### 加解密算法
- [libogg](https://gitee.com/openharmony-sig/libogg) - 编解码器
- [libsodium](https://gitee.com/hihopeorg/libsodium) - 易用,可移植的加解密库
- [cryptopp](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/cryptopp) - 是密码学库,集成了非常多的密码算法
### 图像处理
- [stb-image](https://gitee.com/openharmony-sig/stb-image) - C/C++实现的图像解码库
- [pyclipper](https://gitee.com/openharmony-sig/pyclipper) - 图形处理库,可以用于解决平面二维图形的多边形简化、布尔运算和偏置处理
- [jbig2enc](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/jbig2enc) - 是JBIG2文件的编码器
- [leptonica](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/leptonica) - 一个开放源码的C语言库,它被广泛地运用于图像处理和图像分析
- [openjpeg](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/openjpeg) - 是用 C 语言编写的开源 JPEG 2000 编解码器
- [libtiff](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/tiff) - 是一个用来读写标签图片(tiff)的库。该库还支持如下文件格式的转化
### 网络通信
- [nanopb](https://gitee.com/hihopeorg/nanopb) - 轻量的支持C语言的一种数据协议,可用于数据存储、通信协议等方面
- [c-ares](https://gitee.com/openharmony-sig/c-ares) - 异步解析器库,适用于需要无阻塞地执行 DNS 查询或需要并行执行多个 DNS 查询的应用程序
- [libevent](https://gitee.com/openharmony-sig/libevent) - 事件通知库
- [kcp](https://gitee.com/openharmony-sig/kcp) - ARQ 协议,可解决在网络拥堵情况下tcp协议的网络速度慢的问题
- [mqtt](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/mqtt) - MQTT 是用 C 语言编写的用于MQTT协议的Eclipse Paho C客户端库
### 数据压缩解压
- [lzma](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/lzma) \- 是2001年以来得到发展的一个数据压缩算法,它是一种高压缩比的传统数据压缩软件
- [zstd](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/zstd) - 一种快速的无损压缩算法,是针对 zlib 级别的实时压缩方案,以及更好的压缩比
- [minizip-ng](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/minizip-ng) \- 一个用C编写的zip文件操作库
- [unrar](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/unrar) \- 一个解压rar文件的库
- [xz](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/xz) \- 是免费的通用数据压缩软件,具有较高的压缩比
### 文本解析器
- [xerces-c](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/xerces-c) - 一个开放源代码的XML语法分析器,它提供了SAX和DOM API
- [rapidjson](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/rapidjson) - 一个跨平台的c++的json的解析器和生成器
- [tinyxml2](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/tinyxml2) - 是 simple、small、efficient 的开源 C++ XML 文件解析库
- [tinyxpath](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/tinyxpath) - 用于从 XML 树中提取 XPath 1.0 表达式
### 编码转换
- [iconv](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/iconv) - 一个实现字符集转换的库,用于没有Unicode或无法从其他字符转换为Unicode的系统
### 其他工具类
- [lua](https://gitee.com/openharmony-sig/lua) - Lua是一种功能强大、高效、轻量级、可嵌入的脚本语言
- [inotify-tools](https://gitee.com/hihopeorg/inotify-tools) - 异步文件系统监控组件,它满足各种各样的文件监控需要,可以监控文件系统的访问属性、读写属性、权限属性、删除创建、移动等操作
- [libharu](https://gitee.com/openharmony-sig/libharu) - 用于生成 PDF格式的文件
- [leveldb](https://gitee.com/openharmony-sig/leveldb) - 快速键值存储库,提供从字符串键到字符串值的有序映射
- [bsdiff](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/bsdiff) - 一个提供二进制文件拆分以及合并能力的三方组件
- [concurrentqueue](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/concurrentqueue) - 一个高效的线程安全的队列的库
- [modbus](https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/modbus) - 是用 C 语言编写的第三方Modbus库来实现modbus通讯,支持 RTU(串行)和 TCP(以太网)通信模式,可根据 Modbus 协议发送和接收数据