2018 年开源中国社区「新增」开源软件排行榜之国产 TOP 50 终于发布了! 榜单根据 2018 年开源中国社区新收录的开源项目的关注度、活跃度,以及所属分类整理而来,相信在一定程度上反映了国内大部分开发者在 2018 年所使用的技术栈和希望学习的技术。 可以看到,Java 相关框架一如既往地占据了榜单的很大一部分,而随着 AI 技术在近两年的兴起,也诞生了更多的人工智能开源项目。无论是公司或者个人,都在该领域下产出了不少优秀的开源项目,这些开源项目也逐渐被更多开发者所关注并使用。 而小程序,最初面世时毁誉参半,但目前看来,围绕小程序而诞生越来越多的开源项目,不但证明了自己的价值,也让唱衰的声音逐渐冷却了下去。 需要说明的是,榜单中的软件已经过筛选,均符合国际 OSI 认可的开源协议。 2018 国产开源软件新增榜 TOP 50 前 20 预览
1. SpringBoot-Plus:基于 Spring Boot 2 的后台管理系统SpringBoot-Plus 是一个基于 Spring Boot 2 的后台管理系统,包含了用户管理、组织机构管理、角色管理、功能点管理、菜单管理、权限分配、数据权限分配、代码生成、子系统生成、文档管理和预览等功能。不同于其他简单的开源后台管理系统,SpringBoot-Plus 具备适当的企业应用深度。
系统基于 Spring Boot 2 技术,前端采用了 Layui 2。数据库以 MySQL/Oracle/PostgresSQL 为实例,理论上是跨数据库平台。
项目主页:https://gitee.com/xiandafu/springboot-plus 2. Arthas:开源 Java 诊断工具Arthas(阿尔萨斯)是阿里巴巴开源的 Java 诊断工具。
Arthas 支持 JDK 6+,采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。
项目主页:https://alibaba.github.io/arthas/ 3. RuoYi:基于 Spring Boot 2.0 的后台管理系统基于 Spring Boot2.0 的权限管理系统,易读易懂、界面简洁美观。核心技术采用 Spring、MyBatis、Shiro,没有任何其它重度依赖,直接运行即可用。
若依基于 hplus 和 inspinia 两套后台系统模板开发,可以用于所有的 Web 应用程序,如 CMS、CRM、OA、网站管理后台和网站会员中心。所有前端后台代码封装过后十分精简易上手,出错概率低,同时支持移动客户端访问。
项目主页:https://gitee.com/y_project/RuoYi 4. J-IM:Java 实现的轻量级高性能 IM 框架J-IM 是使用 Java 语言,基于 t-io 开发的轻量、高性能、单机支持几十万至百万的在线用户 IM,主要目标是降低即时通讯门槛,快速打造低成本接入在线 IM 系统,通过极简洁的消息格式就可以实现多端不同协议间的消息发送,如内置(Http、Websocket、TCP 自定义 IM 协议)等,并提供通过 HTTP 协议的 API 接口进行消息发送,无需关心接收端属于什么协议,一个消息格式搞定一切!
项目主页:https://gitee.com/xchao/j-im 5. WeavingDB:C# 实现的缓存库为满足 C# 项目的特殊使用与简单部署,故而开发此 WeavingDB,希望给做 .NET 开发者带来帮助。WeavingDB 使用 C# 实现,支持 K-V 方式,也是一个支持 JSON 数据的条件查询的内存缓存库。
项目主页:https://gitee.com/UDCS/WeavingDB 6. dingdang-robot:中文语音对话机器人项目叮当是一款可以工作在 Raspberry Pi 上的中文语音对话机器人/智能音箱项目。
叮当被唤醒后,用户的语音指令先经过在线 STT 引擎进行 ASR 识别成文本,然后对识别到的文本进行技能匹配,交给适合处理该指令的技能插件去处理。插件处理完成后,得到的结果再交给 TTS 引擎合成成语音,播放给用户。虽然一次交互可能包含多次网络请求,不过带来的好处是:每一个环节都可以被修改和定制。
项目主页:https://dingdang.hahack.com/ 7. DBCHM:数据库 CHM 文档生成工具DBCHM 号称是最简单、最实用的数据库表列批注维护工具,主要功能:
支持 SQLServer/MySQL/Oracle/PostgreSQL 等数据库的表列批注维护管理。
项目主页:https://gitee.com/lztkdr/DBCHM 8. XXL-SSO:分布式单点登录框架XXL-SSO 是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。 拥有"轻量级、分布式、跨域、Cookie+Token 均支持、Web+APP 均支持"等特性,开箱即用。
项目主页:http://www.xuxueli.com/xxl-sso/#/ 9. VNote:基于 Qt 框架的开源笔记软件VNote 基于 Qt 框架,是一个受 Vim 启发开发的专门为 Markdown 而优化、设计的开源免费笔记软件,VNote 更是一个更了解程序员和 Markdown 的笔记软件,它专注于 Markdown 的编辑与阅读,以提供舒适的编辑体验为设计目标。
项目主页:https://tamlok.github.io/vnote/zh_cn/ 10. Layx:仿真 Windows 界面的 Web 弹窗组件Layx 是一款仿 Windows 系统窗口的 Web 弹窗插件,纯原生 Javascript 实现,不依赖任何第三方框架,支持 IE10+(含 IE10)、Chrome、Firefox、Opera、Edge、Safari 等主流浏览器。gzip 压缩版仅 13.5kb,非常小巧。
项目主页:https://gitee.com/monksoul/LayX 11. SOFABoot:基于 Spring Boot 的研发框架SOFABoot 是蚂蚁金服开源的基于 Spring Boot 的研发框架,它在 Spring Boot 的基础上,提供了诸如 Readiness Check,类隔离,日志空间隔离等等能力。在增强了 Spring Boot 的同时,SOFABoot 提供了让用户可以在 Spring Boot 中非常方便地使用 SOFAStack 相关中间件的能力。
项目主页:https://gitee.com/alipay/sofa-boot 12. 飞冰 ICE:基于 React 的中后台应用解决方案飞冰(ICE) 是一套基于 React 的中后台应用解决方案,ICE 包含了一条从设计端到开发端的完整链路,帮助用户快速搭建属于自己的中后台应用。
面向设计者端,ICE 提供了 ICE Design 设计语言,来给 UI 界面提供专业的视觉指导。面向开发者端,ICE 提供了 Iceworks 工具,这是一个图形化界面的开发平台,它承载了 ICE 的物料体系和开发体验。
项目主页:https://alibaba.github.io/ice/ 13. iView Weapp:高质量的微信小程序 UI 组件库iView Weapp 是一套高质量的微信小程序 UI 组件库。1.0 提供了 30 个组件,并会不断丰富。
项目主页:https://weapp.iviewui.com/ 14. mpvue:基于 Vue.js 的小程序开发框架mpvue 是一个使用 Vue.js 开发小程序的前端框架。框架基于 Vue.js 核心,mpvue 修改了 Vue.js 的 runtime 和 compiler 实现,使其可以运行在小程序环境中,从而为小程序开发引入了整套 Vue.js 开发体验,并从底层支持 Vue.js 语法和构建工具体系。
项目主页:http://mpvue.com/ 15. Taro:遵循 React 语法规范的多端统一开发框架Taro 是由京东 - 凹凸实验室打造的一套遵循 React 语法规范的多端统一开发框架,实现用 React 写小程序,生成 H5、React Native 等多端应用。
项目主页:https://taro.aotu.io/ 16. pig-cloud:基于 Spring Cloud 的企业级认证与授权基于 Spring Cloud、Spring Security Oauth2.0 开发企业级认证与授权,提供常见服务监控、链路追踪、日志分析、缓存管理、任务调度等实现。
项目主页:https://gitee.com/log4j/pig 17. SOAR:SQL 智能优化与改写工具SOAR(SQL Optimizer And Rewriter)是一个对 SQL 进行优化和改写的自动化工具,由小米人工智能与云平台的数据库团队开发与维护。 业内其他优秀产品对比
项目主页:https://github.com/XiaoMi/soar 18. JavaMonitor:Java 应用性能监控系统Java 应用性能远程监控系统(分布式监控),适用于监控所有 Java 应用,具有堆内存监控、方法区监控、GC 监控、类加载监控、类编译监控与线程监控等功能,提供堆快照下载和线程快照下载。
项目主页:https://gitee.com/zyzpp/JavaMonitor 19. Roses:基于 Spring Boot 的分布式和服务化解决方案Roses 基于 Spring Boot 2 和 Spring Cloud Finchley.SR2,更符合企业级的分布式和服务化解决方案。Roses 提供可靠消息最终一致性分布式事务解决方案,提供基于调用链的服务治理,提供可靠的服务异常定位方案(Log + Trace)等等,一个分布式框架不仅需要构建高效稳定的底层开发框架,更需要解决分布式带来的种种挑战!
项目主页:https://gitee.com/stylefeng/roses 20. PDMan:数据库模型建模工具PDMan 是一个数据库模型建模,以及数据库版本管理工具,主要功能如下:
支持 Windows, Mac, Linux 等操作系统,支持常见数据库 MySQL, Oracle, SQLServer, DB2 等。是 PowerDesigner 之外,另一个更好的免费替代方案。
项目主页:https://gitee.com/robergroup/pdman 21. VuePress:基于 Vue 的静态网站生成器VuePress 是一个基于 Vue 的轻量级静态网站生成器,以及为编写技术文档而优化的默认主题。它是为了满足 Vue 自己的子项目文档的需求而创建的。 VuePress 享用 Vue + webpack 开发环境,在 markdown 中使用 Vue 组件,并通过 Vue 开发自定义主题。VuePress 为每一个由它生成的页面提供预加载的 html,不仅加载速度极佳,同时对 seo 非常友好。一旦页面被加载之后,Vue 就全面接管所有的静态内容,使其变成一个完全的 SPA 应用,其他的页面也会在用户使用导航进入的时候来按需加载。
项目主页:https://github.com/vuejs/vuepress 22. Zeu.js:实时监控可视化组件库Zeu.js 是一个 JavaScript 库,其中包含一系列预构建的可视化组件,用于构建实时 TV 仪表板,监控 UI 和物联网 Web 界面。
项目主页:https://github.com/shzlw/zeu 23. OSROOM:Python 的开源 Web 系统OSROOM 是使用 Python 3(>=3.4) 语言,基于 Flask 微型框架 + MongoDB(>=3.4) + Redis 开发的一个 Web 系统(CMF, Rest Api)。通过 OSROOM,除了可以搭建常见的普通网站外,还可以作为小程序服务端,小程序客户端可直接调用 API 请求数据。
项目主页:https://gitee.com/osroom/osroom 24. cocker:C 语言实现的容器引擎cocker 是个人用 C 语言完全自研的容器引擎(对标 Docker),使用到了以下 Linux 底层技术:LXC、cgroup、overlayfs、iptables、ptms 等。系统架构如下:
项目主页:https://gitee.com/calvinwilliams/cocker 25. TeaWeb:可视化智能 Web 服务TeaWeb 是一款集静态资源、缓存、代理、统计、监控于一体的可视化智能 WebServer。TeaWeb 使用 Go 语言实现,在高可定制化前提下,保证高性能、高并发。
项目主页:https://gitee.com/liuxiangchao/build 26. MeEdu:基于 Laravel 开发的在线点播系统MeEdu 是一个基于 Laravel 开发的在线点播系统,寄托了作者对当前知识付费领域的期望。相信未来每位身负技能的人都可以通过 MeEdu 来构建自己的知识付费应用,通过 MeEdu 将自己的知识进行变现。
项目主页:https://gitee.com/myteng/MeEdu 27. JVM-Sandbox:动态非侵入 AOP 解决方案JVM-Sandbox,JVM 沙箱容器,一种基于 JVM 的非侵入式运行期 AOP 解决方案。
JVM-SANDBOX 的核心功能:实时无侵入 AOP 框架、动态可插拔容器
项目主页:https://github.com/alibaba/jvm-sandbox 28. Fusion Design:企业级中后台 UI 解决方案Fusion Design 是一种旨在提升设计与开发之间 UI 构建效率的工作方式。通过建设基于 DPL 模式的,设计、前端之间的标准协议与工作流,来快速构建符合业务诉求的 DPL,提升 DPL 的构建效率和应用效率,帮助业务快速实现 UI 构建。 Next 是基于 Alibaba Fusion Design 的设计理念实现的一套 DPL 。配合 https://fusion.design 使用可以实现换肤的能力。基于 React 实现,支持所有现代浏览器和 IE9+。
项目主页:https://fusion.design/ 29. Nacos:动态服务发现、配置和服务管理平台Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。 服务(Service)是 Nacos 世界的一等公民。Nacos 支持几乎所有主流类型的服务的发现、配置和管理,帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。 Nacos 全景图
如 Nacos 全景图所示,Nacos 无缝支持一些主流的开源生态,例如 Dubbo and Dubbo Mesh TODO、Spring Cloud TODO、Kubernetes and CNCF TODO。
项目主页:https://nacos.io/ 30. Walle(瓦力):Web 上线部署系统工具Walle 让用户代码发布终于可以不只能选择 Jenkins,支持各种 Web 代码发布,php、java、python、go 等代码的发布、回滚可以通过 Web 来一键完成。
Walle 是一个可自由配置的项目,更人性化、高颜值、支持 git,也是一个多用户、多语言、多项目、多环境同时部署的开源上线部署系统。
项目主页:https://www.walle-web.io/ 31. Wayne:Kubernetes 多集群管理平台Wayne 是一个通用的、基于 Web 的 Kubernetes 多集群管理平台。
架构图
通过可视化 Kubernetes 对象模板编辑的方式,降低业务接入成本, 拥有完整的权限管理系统,适应多租户场景,是一款适合企业级集群使用的发布平台。
项目主页:https://github.com/Qihoo360/wayne 32. Go Chassis:产品级 Go 语言微服务框架Go Chassis 是华为云 CSE 开源的一个用 Go 语言编写的微服务快速开发框架。借助 CSE Go Chassis 进行微服务开发可最大化地降低开发门槛,提升产品上线速度,同时可以获得微服务运行时高可靠性保证、运行时动态治理等一系列开箱即用的能力。
项目主页:https://github.com/go-chassis/go-chassis 33. tcplstat:TCP 网络监控工具tcplstat 是基于 libpcap 网络嗅探程序包的网络监控工具,它能旁路捕获所有经过网络设备过滤规则的 TCP 数据,跟踪当前所有 TCP 连接会话,记录所有经过的 TCP 分组,当连接断开或到达最大记录数时倒出统计信息,包含但不限于连接两端网络地址、建立时间戳、三步握手各分组延迟、四步分手各分组延迟,数据分组明细、往来分组间延迟和相反方向分组延迟的最小、平均、最大统计值。 tcplstat 除了引用了 Linux 内核的红黑树和链表源码外,自身源码只有 1500 行左右,源码结构简单易读。tcplstat 支持跨主流平台 Linux、Windows、AIX。
项目主页:https://gitee.com/calvinwilliams/tcplstat 34:NovalIDE:多功能跨平台 Python IDENovalIDE 是一款开源,跨平台,而且免费的国产 Python IDE ,有出色的语法高亮功能,支持多种语言,Python,C/C++,HTML,JavaScript,xml,CSS 等,解释器运行脚本,支持函数智能提示和代码自动完成,以及新建 NovalIDE 工程和从现有代码创建工程,新建工程类型将包括应用程序,Django,Flask,wxPython,Py2exe,Win32,GTK,控制台程序等。
项目主页:http://www.novalide.com/ 35. SpriteJS:跨终端 Canvas 绘图库SpriteJS 是一款由 360 奇舞团开源的跨终端 Canvas 绘图库,可以基于 Canvas 快速绘制结构化 UI 、动画和交互效果,并发布到任何拥有 Canvas 环境的平台上(比如浏览器、小程序和 node )。
项目主页:http://spritejs.org 36. Spring Cloud Alibaba:分布式应用服务开发的一站式解决方案Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。 主要功能
项目主页:https://github.com/spring-cloud-incubator/spring-cloud-alibaba 37. YoShop:萤火小程序商城萤火小程序商城,是一款开源的电商系统,为中小企业提供最佳的新零售解决方案。采用稳定的 MVC 框架开发,执行效率、扩展性、稳定性值得信赖。
项目主页:https://gitee.com/xany/bestshop-php 38. Overwatch:通用 RPC 监控系统Overwatch 是一个用于分布式系统的通用 RPC 监控系统,它将 D3 force 布局作为主要图表。
Overwatch 提供了整个系统当前状态的概览,使系统管理员能够轻松了解正在进行的 RPC 事件并找出系统中故障的来源。 与常见监控系统不同,Overwatch 使用设计良好的图形(使用 D3 强制布局)用于可视化数据。
项目主页:https://github.com/imdada/overwatch 39. JFinal Undertow:JFinal 项目部署环境jfinal-undertow 用于开发、部署由 jfinal 开发的 web 项目。独创 HotSwapClassLoader + HotSwapWatcher 以 319 行代码极简实现热加载开发与部署。
项目主页:https://gitee.com/jfinal/jfinal-undertow 40. MACE:神经网络计算框架Mobile AI Compute Engine (MACE) 是一个专为移动端异构计算平台优化的神经网络计算框架。 主要从以下的角度做了专门的优化:性能、功耗、系统响应、内存占用、模型加密与保护和硬件支持范围。
项目主页:https://github.com/XiaoMi/mace 41. smart-doc:Java Restful API 文档生成工具smart-doc 是一个 java restful api 文档生成工具,smart-doc 颠覆了传统类似 swagger 这种大量采用注解侵入来生成文档的实现方法。 smart-doc 完全基于接口源码分析来生成接口文档,完全做到零注解侵入,你只需要按照 java 标准注释的写就能得到一个标准的 markdown 接口文档。
项目主页:https://gitee.com/sunyurepository/ApplicationPower/tree/master/smart-doc 42. noForm:基于 React 的表单解决方案NoForm是阿里巴巴外综服前端团队在外综服(外贸综合服务)场景下,经过长期的思考和打磨产出的一款基于 React 的表单解决方案。可能有人不理解,可能会问:表单嘛,能有多复杂?可能你从没见过一个表单需要填写 150+ 个字段。可能你也没有见过一个表单实际是由 10+ 个子表单组合出来的。可能你也没见过一个表单的字段是后端动态配置的。 NoForm 从解决业务复杂性的角度出发,找到了几个抓手,将表单方案进行了优化和开源。
项目主页:https://github.com/alibaba/nopage 43. DataGear:数据齿轮数据库管理系统数据齿轮是一款数据库管理系统,使用 Java 语言开发,采用浏览器/服务器架构,以数据管理为核心功能,支持多种数据库。 系统主界面如下图所示:
项目主页:http://www.datagear.tech/ 44. wikift:知识管理系统wikift 是一套企业级开源的易用的知识管理系统。
项目主页:https://github.com/wikift/wikift 45. v-charts:基于 Vue2.0 和 ECharts 封装的图表组件在使用 echarts 生成图表时,经常需要做繁琐的数据类型转化、修改复杂的配置项,v-charts 的出现正是为了解决这个痛点。基于 Vue2.0 和 echarts 封装的 v-charts 图表组件,只需要统一提供一种对前后端都友好的数据格式,设置简单的配置项,便可轻松生成常见的图表。
项目主页:https://github.com/ElemeFE/v-charts 46. RSUITE:基于 React 的 UI 组件库React Suite 是一套 React 组件库,为后台产品而生。主要服务于公司大数据产品线。经历了三次大的版本更新后,累积了大量的组件和丰富的功能。
项目主页:https://rsuite.gitee.io/ 47. SpringBootBucket:Spring Boot 全家桶本项目对目前 Web 开发中常用的各个技术,通过和 SpringBoot 的集成,并且对各种技术通过“一篇博客 + 一个可运行项目”的形式来详细说明。 每个子项目都会使用最小依赖,大家拿来即可使用,自己可以根据业务需求自由组合搭配不同的技术构建项目。
项目主页:https://gitee.com/yidao620/springboot-bucket 48. VisualDL:跨框架深度学习可视化框架VisualDL,即 Visualize the Deep Learning,是一个面向深度学习任务设计的可视化工具,包含了 scalar、参数分布、模型结构、图像可视化等功能,项目正处于高速迭代中,新的组件会不断加入。
除了 Python SDK 之外,VisualDL 底层采用 C++ 编写,其暴露的 C++ SDK 也可以集成到其他平台中,实现原生的性能和定制效果。
项目主页:http://visualdl.paddlepaddle.org/ 49. libaco:轻量级 C 非对称协程库libaco - 一个极速的轻量级 C 非对称协程库。简要介绍:
上文中的"最快"指的是在满足 Sys V ABI Intel386 或者 AMD64 约束下最快的上下文切换实现。
项目主页:https://github.com/hnes/libaco 50. OpenAuth.Core:基于 .NET Core 2.1 的快速开发框架基于 .NET Core 2.1 的快速开发框架。核心模块包括:组织机构、角色用户、权限授权、表单设计、工作流等。它的架构精良易于扩展,是中小企业的首选。
项目主页:https://gitee.com/yubaolee/OpenAuth.Core 最后每年这个时候,开源中国社区都会发布年度榜单。而「国产」相关的榜单往往也是争议最大的,吐槽的点不外乎「这么水(low、垃圾)的项目也能上榜?」、「xx 都能上了,xxx 居然不能上?」、「你们是不是收钱了?xx 这样的项目也放上去」这几个。 首先,榜单的项目都是从 2018 年开源中国社区「新增」的开源项目里面进行挑选(包括在 2018 年托管到码云Gitee平台,或被开源中国社区收录的项目)。其次,根据开源软件的关注度和活跃度,以及它们所属的分类,我们会再筛选一遍,同类的项目自然就不会全部都上榜。 (责任编辑:IT) |