# Doric
Doric是一套高性能的跨平台开发框架,使用TSX/TypeScript开发,一套代码可在不同平台展示出同样的页面.
## OSCS
[![OSCS Status](https://www.oscs1024.com/platform/badge/doric-pub/Doric.svg?size=large)](https://www.oscs1024.com/project/doric-pub/Doric?ref=badge_large)
## Murphysec
[![Security Status](https://www.murphysec.com/platform3/v3/badge/1608990415081447424.svg)](https://www.murphysec.com/accept?code=933ad32fd0af5a1633e85dffbbb5f45c&type=1&from=2&t=1)
## 特色
### 跨平台统一
Doric目前已支持Android、iOS、Qt、Web,可通过一套代码在各平台展示一致的前端页面.
### 高性能渲染
Doric渲染视图时使用原生组件,在API上遵循原生接口,在架构上采用脏值检测、局部更新等多种机制实现JS与原生间的高效通信,Doric页面的渲染及运行性能可真正达到与原生媲美.
### 轻量化,易扩展
Doric中遵循轻量化的原则,SDK提供核心能力及通用的视图组件和平台的原生能力模块,可以满足常用的需求.
同时,Doric中也提供了完备的插件机制,您可以通过注册插件来向Doric中提供视图组件或原生能力.
### 易上手,丰富的工具链
Doric提供脚手架工具`doric-cli`及开发调试工具`Devkit`,提供热重载、断点调试、性能瀑布图、节点查看器等多种工具,帮助开发者更方便快捷地开发页面,并进行分析调试.
## 快速使用
> 项目文档: [https://doric.pub](https://doric.pub)
* 您可以直接打开网页[Doric Playgroud](https://p.doric.pub/play/?e=167#example/HelloDoric.ts)快速体验Doric中的风格
* 您可以通过`doric-cli`命令行工具直接创建Doric应用,可参考[安装使用](https://doric.pub/docs/index.html#%E5%AE%89%E8%A3%85Doric)
* 如果您需要在现有Android项目中接入使用Doric,可参考[在Android中使用Doric](https://doric.pub/docs/android.html)
* 如果您需要在现有iOS项目中接入使用Doric,可参考[在iOS中使用Doric](https://doric.pub/docs/ios.html)
## 示例代码
您可以通过下方代码体验Doric中的编写风格
### 声明式UI
您可以根据喜好,使用TypeScript或TSX语法书写布局.
| TypeScript | TSX |
| ---- | ---- |
| | |
### 跨平台统一
下图为代码在Android及iOS应用上的运行截图
| Android | iOS |
| ---- | ---- |
| ! | |
## 常用插件库
### [DoricFs](https://github.com/doric-pub/DoricFs)
提供平台中读写文件系统的能力(Android+iOS)
### [DoricWebSocket](https://github.com/doric-pub/DoricWebSocket)
提供WebSocket能力支持(Android+iOS)
### [DoricImagePicker](https://github.com/doric-pub/DoricImagePicker)
提供图片选择及拍照功能(Android+iOS)
### [DoricBarcodeScanner](https://github.com/doric-pub/DoricBarcodeScanner)
提供扫码支持(Android+iOS)
### [DoricSQLite](https://github.com/doric-pub/DoricSQLite)
提供SQLite数据库支持(Android+iOS)
## License
[Apache License 2.0](LICENSE)
## 欢迎扫码加入Doric社区讨论交流
|QQ | 钉钉 | 微信|
| ---- | ---- | ---- |
| | | |