ECMAScript开源巨献:Google最叫座60款开源项目

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

0、机器学习连串 TensorFlow  ★Star 62533

 

ECMAScript 1

 

TensorFlow
是谷歌的第二代机器学习系统,依照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

ECMAScript 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/angularECMAScript,)

 

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 的一个开源项目,包含众多 Google 大旨的 Java
常用库。(详情:https://github.com/google/guava

 

7、Spark  ★Star 13378

ECMAScript 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

ECMAScript 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 是一个来自 Google 的 Javascript
编译器,通过它可以体会一些很新并且有趣的 Javascript
语言特色,这个大多数是还未曾被眼前浏览器实现的 ECMAScript
标准或草案,比如:数组相比较、类、模块、迭代器、方法参数默认值、Promise等。(详情:https://github.com/google/traceur-compiler

 

18、媒体播放器 ExoPlayer  ★Star 7152

ECMAScript 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

Google 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

ECMAScript 6

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

 

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

ECMAScript 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

谷歌的开源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

 

ECMAScript 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 是 Google 开源的一个基于 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

 

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

ECMAScript 9

 

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

 

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

ECMAScript 10

 

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

 

41、Web应用 Tracing Framework   ★Star 2371

ECMAScript 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由Google开发,内置JavaScript内部支出的JavaScript加密库。它提供了一种通过Chrome扩充程序将OpenPGP集成到Gmail中的方法。消息的当众单独保留在客户端上。(详情:https://github.com/e2email-org/e2email

 

喜爱就珍藏吧~