Node.js开源巨献:Google最看好60款开源项目

文章整理于互联网。
本文收集了 60款 Google 开源的项目,排名顺序按照 Github ★Star 数量排列。

0、机器学习系统 TensorFlow  ★Star 62533

 

Node.js 1

 

TensorFlow
是Google的第二代机器学习系列,依据Google所说,在好几条件测试中,TensorFlow的表现比第一代的DistBelief快了2倍。TensorFlow
内建纵深学习的恢宏匡助,任何可以用计量流图形来表述的盘算,都能够利用TensorFlow。任何依照梯度的机械学习算法都可以收益于TensorFlow的活动分
化(auto-differentiation)。通过灵活的Python接口,要在TensorFlow中发挥想法也会很容易。(详情:https://github.com/tensorflow/tensorflow

 

1、material-design-icons  ★Star 30315

Google 开源了 Material Design 系统图标包里面的 750
个字形。该连串图标包含常用的图标,如用于媒体播发、通讯、内容编排、连接等等。在
Web 应用,安卓和 iOS
设计均适用。(详情:http://google.github.io/material-design-icons/

 

2、前端开发工具组 MDL  ★Star 27873

Node.js 2

MDL (Material Design Lite) 是 Google 推出的网站前端开发工具组。Material
Design Lite (MDL)能够让您添加一个 Material Design
的外观和感到到你的静态内容网站,不借助于于任何的 JavaScript 框架和库。MDL
可以优化跨设备的运用体验,可以在旧版的浏览器进行平整的切换,提供充分急迅的走访体验。(详情:https://github.com/google/material-design-lite

 

3、Web 前端框架 Angular  ★Star 25524

Angular 是一款特别风靡且好用的 Web 前端框架,目前由 Google维护。官方已将 Angular 2 和事先的本子 Angular.js 分开维护(两者的 GitHub
地址和档次主页皆不一样)。渐进式 Web 应用,借助现代化 Web
平台的能力,交付 app
式体验。高性能、离线化、零安装。(详情:https://github.com/angular/angular

 

4、容器集群管理体系 Kubernetes  ★Star 24599

Kubernetes 是根源 Google 云平台的开源容器集群管理体系。基于 Docker
构建一个容器的调度服务。该系统可以活动在一个容器集群中采纳一个办事容器供役使。其基本概念是
Container Pod。(详情:https://github.com/kubernetes/kubernetes

 

5、数据描述语言 protobuf  ★Star 18447

Protocol Buffers (ProtocolBuffer/ protobuf
)是Google公司开发的一种多少描述语言,类似于XML能够将结构化数据系列化,可用于数据存储、通信协议等方面。现阶段补助C++、JAVA、Python等二种编程语言。同XML相比较,Protocol
buffers在连串化结构化数据方面有这些独到之处(详情:https://github.com/google/protobuf

 

6、Java 常用库 Guava  ★Star 17267

该项目是 Google 的一个开源项目,包含众多 谷歌 主题的 Java
常用库。(详情:https://github.com/google/guava

 

7、Spark  ★Star 13378

Node.js 3

Spark(Spark) 是Google商厦出产的一款基于 Chrome 浏览器的开支环境。提供一组可选取的
UI 组件。采纳 Dart
开发。(安装模式:https://github.com/dart-lang/spark/tree/master/ide

 

8、RPC 框架 GRPC  ★Star 10363

GRPC 是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2
设计。近日提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go.
其中 C 版本襄助 C, C++, Node.js, Python, Ruby, Objective-C, PHP 和 C#
辅助.GRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP
连接上的多复用请求等特。这么些特点使得其在运动装备上显现更好,更省电和节省空间占据。(详情:https://github.com/grpc/grpc

 

9、高质料滑坡图片算法工具Guetzli  ★Star 9959

Node.js 4

Guetzli,是一个对准数码图像和网页图像的 JPEG 编码器,可以由此发出更小的
JPEG 文件来达到更快的在线体验,并且还要保障与当下浏览器,图像处理利用和
JPEG 标准的兼容性。Google 称 Guetzli 创设高质地的 JPEG
图像文件的尺寸比最近的滑坡方法要再小 35%。上图为 16×16
像素样本,是挂在蓝天下的一根电话线,传统 JPEG
算法平时会赶上的失真情况。左边是未压缩的原图,中间为较小尺码的
libjpeg,左边是失真更少的 Guetzli
。(详情:https://github.com/google/guetzli

 

10、k/v数据库 Leveldb  ★Star 9799

Leveldb是一个google实现的非凡迅猛的kv数据库,近年来的本子1.2可以协理billion级其它数据量了。
在那个数额级别下还存有极度高的性质,重要归功于它的完美的筹划。特别是LSM算法。(详情:https://github.com/google/leveldb

 

11、自动化网络审批工具 Lighthouse  ★Star 9400

Lighthouse 是一个开源的自动化工具,用于改革网络使用的质地。
可以将其作为一个 Chrome 扩大程序运行,或从命令行运行。 当为 Lighthouse
提供一个要查核的网址,它将针对此页面运行一体系的测试,然后生成一个有关页面性能的报告。可以参考失利的测试,看看可以采用什么样方法来立异应用。(详情:https://github.com/GoogleChrome/lighthouse

 

12、Gson  ★Star 9261

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据里面举办映射的 Java
类库。可以将一个 JSON 字符串转成一个 Java
对象,或者反过来。(详情:https://github.com/google/gson

 

13、最小系统加载工具 systemjs  ★Star 8356

systemjs
是一个小小系统加载工具,用来创设插件来处理可替代的场景加载过程,包括加载
CSS 场景和图片,紧要运行在浏览器和 NodeJS 中。它是 ES6
浏览器加载程序的的壮大,将应用在本土浏览器中。平日创造的插件名称是模块本身,如果没有特别指定用途,则默认插件名是模块的扩张名称。(详情:https://github.com/systemjs/systemjs

 

14、连串化库 FlatBuffers  ★Star 7991

FlatBuffers 是一个 Java
的行列化库,用于游戏和此外内存受限的行使。FlatBuffers
可以让您一向访问连串化后的数据,无需解压并举行分析的长河。同时提供很强的向前和向后兼容性。FlatBuffers
援助 C++ 和 Java
语言,无需依靠第三方库协理。(详情:https://github.com/google/flatbuffers

 

15、Xi 文本编辑器 Xi Editor  ★Star 8000

Xi Editor 是 Google 开源的一款用 Rust 语言编写的公文编辑器,最初是为 Mac
OS X 构建的,使用 Cocoa
作为用户界面,已有计划适配另外平台。所有编辑操作都得以在 16ms
之内提交并拍卖。文本绘制使用最好的技艺(如 Mac 上的 Core Text,Windows
上的 DirectWrite 等),并完全襄助Unicode。(详情:https://github.com/google/xi-editor

 

16、Grumpy  ★Star 7760

Grumpy 是一个 Python  to Go 源代码翻译编译器和周转时,意在替代 CPython
2.7。 关键的区分是它将 Python 源代码编译为 Go
源代码,然后将其编译为本机代码,而不是字节码。这表示 Grumpy 没有
VM。编译的 Go 源代码是对 Grumpy 运行时的一名目繁多调用,Go 库服务与 Python C
API 类似的目的(即使不直接协助 C
API)。(详情:https://github.com/google/grumpy

 

17、Javascript 编译器 Traceur  ★Star 7300

Traceur 是一个出自 谷歌 的 Javascript
编译器,通过它可以体验一些很新并且有趣的 Javascript
语言特色,这个大多数是还尚无被眼前浏览器实现的 ECMAScript
标准或草案,比如:数组相比、类、模块、迭代器、方法参数默认值、Promise等。(详情:https://github.com/google/traceur-compiler

 

18、媒体播放器 ExoPlayer  ★Star 7152

Node.js 5

ExoPlayer 是 Android 上一个应用级的媒体播放器。它为 Android MediaPlayer
的 API 在广播本地或在线的视频与节奏上提供了一个候选。ExoPlayer 补助部分
Android MediaPlayer API 不能提供的特点,包括 DASH 和 SmoothStreaming
自适应重放,持久的高速缓存和自定义渲染器。不像 MediaPlayer
API,EXOPlayer 很容易定制和壮大,而且它可以经过 Play Store
更新提升。(详情:https://github.com/google/ExoPlayer

 

19、代码构建工具Bazel  ★Star 6641

Bazel 是 Google 的一款可再生的代码构建工具。它根本是用以构建 Google的软件,处理现身在Google的开发条件的构建问题,比如说:大规模数据构建问题,共享代码库问题,从源代码构建的软件的连锁问题。协理多种语言并且跨平台,还扶助自动化测试和布局、具有再次出现性(Reproducibility)和规模化等特点。(详情:https://github.com/bazelbuild/bazel

 

20、创作艺术和作曲曲子的机械智能 magenta  ★Star 6563

谷歌 Brain团队的一组研讨人口颁发了一个门类Project
Magenta,其首要对象是接纳机械学习创作格局和作曲曲子。Project
Magenta使用了
TensorFlow系统,研商人员在GitHub上开源了她们的模子和工具。(详情:https://github.com/tensorflow/magenta

 

21、自动生成命令行界面的内容库 Python Fire  ★Star 6500

Python Fire 是 Google 开源的一个可从任何 Python
代码自动生成命令行接口(CLI)的库。Python Fire 是一种在 Python 中创设CLI 的简易方法;是支付和调剂 Python 代码的有效工具;可以使 Bash 和
Python
之间的转移更为容易;并且通过运用你需要导入和创设的模块和变量来安装
REPL,使得应用 Python REPL 更易于

(详情:https://github.com/google/python-fire

 

22、软硬件框架AnyPixel.js  ★Star 5906

Node.js 6

AnyPixel.js 是 Google开源的一个软件和硬件框架,可以用来构建各个由“像素”构成的来得,每个像素可以是此外一种可互相的实业对象,如
LED
灯、气球等。(详情:https://github.com/googlecreativelab/anypixel

 

23、物联网工具Physical Web  ★Star 5899

Node.js 7

Physical Web 是由 Chrome 团队基本的一个档次, 目的在于用 URL 连接世界,
方便用户接受多少。在Web世界中,各样URL可以说是链接的根底,也是去要旨化的,所以“The
Physical
Web”要做的就是让每个智能设备用URL来标识自己,然后用户按照自己的需要经过URL和装置举办交互。这样一来,你利用智能装备的心得就和在网站上使
用各个超链接差不多了。(详情:https://github.com/google/physical-web

 

24、Docker 容器性能分析工具cAdvisorc  ★Star 5853

Advisor 是Google公司用来分析运行中的 Docker
容器的资源占用以及性能特点的工具。cAdvisor
是一个运行中的守护进程用来搜集、聚合、处理和导出运行容器相关的信息,每个容器保持独立的参数、历史资源利用情状和完全的资源利用数据。当前协理lmctfy 容器和 Docker
容器。(详情:https://github.com/google/cadvisor

 

25、C++单元测试工具  ★Star 5755

Google的开源C++单元测试框架Google Test,简称gtest
是一个可怜的正确单元测试框架。襄助跨平台以及包括 Windows CE 和 Symbian
在内的一对手机操作系统。(详情:https://github.com/google/googletest

 

26、IndexedDB 关系查询引擎 lovefield  ★Star 5532

lovefield 是起家在 IndexedDB 上的涉及查询引擎。它提供了看似 SQL
的语法,并且可以跨浏览器工作(目前协助 Chrome 37 及以上版本,Firefox 31
及以上版本,IE 10
及以上版本)。(详情:https://github.com/google/lovefield

 

27、 Java 生成器源代码集合 Auto  ★Star 5295

Auto 是 Java 生成器源代码集合,Java
有成百上千机械、重复、未经测试的代码,而且有时会油然则生部分神秘的 Bug 。Auto
项目是机动执行这多少个类另外职责的代码生成器的聚合,他们得以无 Bug
创立你要编制的代码。(详情:https://github.com/google/auto

 

28、Python 代码格式化的工具  ★Star 5197

YAPF 是 Google 开发的一个用来格式化 Python
代码的工具。(详情:https://github.com/google/yapf

 

29、基于 TensorFlow 的神经网络库 Sonnet  ★Star 5000

 

Node.js 8

 

Sonnet
库使用面向对象的点子,允许创制定义一些前向传导总计的模块。模块用有些输入
Tensor 调用,添加操作到图里并回到输出
Tensor。其中一种设计采用是通过在随之调用相同的模块时自动重用变量来保证变量分享被透明化处理。
该库兼容 Linux/Mac OS X 和 Python 2.7。TensorFlow 的本子必须至少为
1.0.1。Sonnet 扶助 TensorFlow 的 virtualenv 安装情势,以及 nativ pip
安装。(详情:https://github.com/deepmind/sonnet

 

30、无损压缩算法Brotli  ★Star 4822

Brotli 是一个通用目的的无损压缩算法,它通过用变种的 LZ77 算法,Huffman
编码和二阶文本建模举行数据压缩,是一种压缩比很高的压缩方法。在减小速度上跟
Deflate
差不多,不过提供了更凝聚的滑坡。(详情:https://github.com/google/brotli

 

31、负载均衡系统 Seesaw  ★Star 4286

Seesaw 是 谷歌 开源的一个依据 Linux 的载荷均衡系统。Seesaw
包含基本的载重均衡特性,同时扶助部分高等的效率,诸如:anycast, Direct
Server Return (DSR), 扶助两个 VLANs
和集中式配置。同时其计划的宏旨是便于维护。(详情:https://github.com/google/seesaw

 

32、Gumbo  ★Star 4060

Gumbo 是 Google的一款用C语言实现的HTML5解析库,无需任何外部倚重。(详情:https://github.com/google/gumbo-parser

Node.js, 

33、GXUI  ★Star 3803

GXUI 是 Google 出品的一个跨平台 GO 语言的 UI
框架。(详情:https://github.com/google/gxui

 

34、iOS UI 测试自动化框架 EarlGrey  ★Star 3721

服从开源Apache授权的EarlGrey,由Objective-C编写而成。Google也真正用的它来测试自己的iOS
app。EarlGrey可帮助和模拟回溯至iOS
8的配备,有关该工具的事无巨细文档请戳这里。除了EarlGrey,另外iOS
UI测试自动化框架还包括Calabash和Sauce
Labs的Appium。(详情:https://github.com/google/EarlGrey

 

35、Blockly  ★Star 3520

Blockly 是一个按照 Web 的可视化编程工具,只需要拖动几个图形就足以编程,
完全不需要打字. 按照项目FAQ介绍,
那么些新语言的首要目的是为web应用提供宏(或脚本编 程)的协助.
可以把转变的本子输出成javascript, python
等.已经有多少个利用Blockly的demo.(详情:https://github.com/google/blockly

 

36、go-github  ★Star 2707

go-github  是 Google 对 Github 的盛开 API 举办 Go
语言封装的一个体系。(详情:https://github.com/google/go-github

 

37、抓取bug工具 error-prone   ★Star 2708

error-prone 用来抓取 Java
编译时的一无是处。平时选取编译器只好做静态类型的检查。但利用此工具,可以举办编译器的类别分析,可以检测并抓取到编译过程中的
Bug,可以大大的节约开发者的岁月。(详情:https://github.com/google/error-prone

 

38、ROS 系统帮忙的 SLAM 库 Cartographer   ★Star 2700

Cartographer,是谷歌开源的一个ROS系统帮忙的2D和3D SLAM(simultaneous
localization and mapping)库。SLAM
算法结合来自六个传感器(比如,LIDAR、IMU 和
视频头)的多寡,同步统计传感器的岗位并绘制传感器周围的条件。在产业界和教育界常见的传感器配置上,Cartographer
能实时建立全局一致的地形图。(详情:https://github.com/googlecartographer/cartographer

 

39、安卓电量分析工具 Battery Historian   ★Star 2579

Node.js 9

 

Battery Historian 是一个通过分析安卓 “bugreport”
进程文件来总括电量消费情形。它同意应用程序开发人士在时光线上可视化系统和采取程序级事件,具有活动和缩放效用,在装置上完全充电后方可轻松查看各类汇总总计音信,并能选用应用程序,检查影响应用程序特定电池的目标。
它还同意四个错误报告的A /
B相比较,非凡体现首要电池相关目标的差距。(详情:https://github.com/google/battery-historian

 

40、通用编码器&解码器框架 seq2seq  ★Star 2433

Node.js 10

 

seq2seq 是 Google 开源的一款用于 TensorFlow
的通用编码器&解码器框架(encoder-decoder
framework),可用以机器翻译、文本摘要、会话建模、图像描述等。(详情:https://github.com/google/seq2seq

 

41、Web应用 Tracing Framework   ★Star 2371

Node.js 11

 

Tracing Framework 是一套库、工具,用于跟踪和查明复杂的 Web
应用。它就足以帮您发现代码的习性问题,并且帮您打造非凡畅达的 60 FPS Web
应用。它近年来只好用于特定的行使场所,并不是为利用于所有场景而设计,假使你在使用过程中遭遇了问题,请呈递你的
Bug。(详情:https://github.com/google/tracing-framework

 

42、深度概率编程语言 爱德华(Edward)   ★Star 2395

爱德华(Edward) 是一个用来概率建模、推理和评估的 Python
库。它是一个用于快捷实验和研讨概率模型的测试平台,其含有的模子范围从在小数目集上的经文层次模型到在大数量集上的错综复杂深度概率模型。爱德华(Edward)融合了以下多少个领域:贝叶斯总结学和机械学习、深度学习、概率编程。(详情:https://github.com/blei-lab/edward

 

43、JavaScript 库 Closure Library   ★Star 2257

Closure Library 是一个强有力的 JavaScript 库,用于复杂的大面积的 Web
应用。它被过多 Google Web 应用使用,比如 Gmail 和 GoogleDocs。(详情:https://github.com/google/closure-library

 

44、大型微服务系统管理工具 Istio   ★Star 2291

Istio 是一个由Google、IBM 与 Lyft
共同开发的开源项目,目的在于提供一种统一化的微服务连接、安全保持、管理与监控措施。Istio
项目可以为微服务架构提供流量管理机制,同时亦为其他增值功用(包括安全性、监控、路由、连接管理与策略等)创设了基础。这款软件使用久经考验的
Lyft Envoy
代理举行构建,可在无需对应用程序代码作出任何发动的前提下实现可视性与控制能力。(详情:https://github.com/istio/istio

 

45、远程现场取证系统 GRR   ★Star 2100

GRR 是 Google 开发的中距离现场事件取证系统。GRR
由一个代理(客户端)和服务器端组成,客户端可以配备在一个任务系统中,服务器可以管理客户端,跟客户端举办相互。(详情:https://github.com/google/grr

 

46、Android 的悬浮操作栏 Hover   ★Star 2053

Hover 是一个用来 Android 的上浮操作栏。该菜单栏可以看做一个 service
启动,从而跨进程使用,悬浮在桌面或者其余应用程序的先头,当然,这里需要报名权限。
Hover 仍居于开发阶段,还有为数不少代码清理工作索要做,也就是说,Hover
现在单独处于可用状态。(详情:https://github.com/google/hover

 

47、模块化深度学习连串 Tensor2Tensor   ★Star 2000

Tensor2Tensor 是一个模块化和可扩充的库和二进制文件,
 可以帮衬人们为各类机器学习程序创设开头进的模子,可利用于两个领域,如翻译、语法分析、图像信息描述等,大大提升了研商和开支的进度。(详情:https://github.com/tensorflow/tensor2tensor

 

48、Google 模糊测试服务 OSS-Fuzz   ★Star 1781

OSS-Fuzz
可以针对开源软件拓展持续的模糊测试,它的目标是采取改进的歪曲测试技术与可举行的分布式执行相结合,提升一般软件基础架构的安全性与安定。OSS-Fuzz
结合了多种歪曲测试技术/漏洞捕捉技术(即原来的libfuzzer)与清洗技术(即原来的
AddressSanitizer),并且经过 ClusterFuzz
为普遍可分布式执行提供了测试环境。(详情:https://github.com/google/oss-fuzz

 

49、优化搜索工具or-tools   ★Star 1771

or-tools 是 Google 的优化搜索工具。Google优化工具包括:约束编程解决方案;为线性规划和交集整数规划解决方案提供简单统一的接口,包括
CBC, CLP, GLOP, GLPK, Gurobi, SCIP, 和 Sulum;背包算法;图算法
(最短路径,线性和分红,最小费用流,最大流)(详情:https://github.com/google/or-tools

 

50、加密库安全测试套件 Wycheproof   ★Star 1722

Wycheproof
是Google开源的加密库测试项目,它蕴含一名目繁多安全测试,用来检测加密库(cryptographic
libraries)软件是否存在已知的抨击漏洞。(详情:https://github.com/google/wycheproof

 

51、Common Lisp Koans   ★Star 1695

Common Lisp Koans(lisp-koans)是一个语言学习训练程序,类似 ruby
koans,python koans 等等。Common Lisp Koans 紧假如扶持学习有些 lisp
规范特性和鼎新,可以学学到大气的 Common Lisp
语言特征。(详情:https://github.com/google/lisp-koans

 

52、 3D 图形开源压缩库 Draco   ★Star 1600

Draco 是一种库,用于压缩和解压缩 3D 几何网格(geometric
mesh)和点云(point cloud)。换句话说,它明确减弱了 3D
图形文件的深浅,同时对 3D
图形的观看者来说又历来不严重影响视觉效果。它还目的在于立异 3D
图形的缩减和传导。Draco 是用作 C++ 源代码宣布的,能够用来压缩 3D
图形,此外还宣告了处理编码数据的 C++ 和 Javascript
解码器。(详情:https://github.com/google/draco

 

 

53、 JavaScript 库 Shaka Player   ★Star 1354

Shaka Player 它实现了 DASH 客户端的职能。它的广播效果基于 HTML5
video、MediaSource Extensions,和 Encrypted Media Extensions 。一般的
DASH
客户端功用很难实现。(详情:https://github.com/google/shaka-player

 

54、TensorFlow 深度学习库 Fold   ★Star 1192

TensorFlow Fold 是用于创建使用结构化数据的 TensorFlow
模型库,其中计算图的结构取决于输入数据的构造。 TensorFlow Fold
使得拍卖不同数量尺寸和结构的深浅学习模型更便于实现。(详情:https://github.com/tensorflow/fold

 

55、Google 地球集团版 Earth Enterprise   ★Star 1161

Earth Enterprise 是 Google Earth Enterprise
的开源版本,是一个提供构建和托管自定义 3D 地球模型和 2D
地图的地理空间应用,目的在于让社区连续改正和推动该项目。(详情:https://github.com/google/earthenterprise

 

 

56、图像差别相比库 Butteraugli   ★Star 1100

Butteraugli
是用来鉴定三个图像之间的相似度。通过辨认图像之间有些最受关注的差距点并提交相似度分值。这么些类型的一个生死攸关思想是对出入受体的不比颜色的职务和密度的统计,特别是绿色的低密度锥窝。另一个想法来自于更纯粹的神经节细胞建模,特别是遏制频率空间。近期该类型只提供了
C++ 接口。(详情:https://github.com/google/butteraugli

 

57、Go 语言实现的网络协协议栈 Netstack   ★Star 1016

Netstack,使用 Go 语言编写的网络协议栈。通过安装 tun_tcp_echo demo
尝试在 Linux 上使用 。(详情:https://github.com/google/netstack

 

58、钢琴二重奏 AI aiexperiments-ai-duet   ★Star 883

“钢琴二重奏”的 A.I. Duet。该品种会在您弹出了多少个音符之后,通过 AI
自动总括来帮您“补完”旋律的重奏部分。A.I. Duet
运用了人工智能技术,精晓音符的“编码规则”。(详情:https://github.com/googlecreativelab/aiexperiments-ai-duet

 

59、端到端加密系统 E2EMail   ★Star 704

E2EMail
是一个试行性质的端到端加密系统。E2EMail由谷歌开发,内置JavaScript内部支出的JavaScript加密库。它提供了一种通过Chrome增加程序将OpenPGP集成到Gmail中的方法。音讯的领会单独保留在客户端上。(详情:https://github.com/e2email-org/e2email

 

保养就珍藏吧~