开源巨献

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

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

 

海洋世界 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

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

 

7、Spark  ★Star 13378

海洋世界 3

斯帕克(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

海洋世界 4

Guetzli,是一个对准数码图像和网页图像的 JPEG 编码器,可以因而发出更小的
JPEG 文件来达到更快的在线体验,并且还要保障与当下浏览器,图像处理利用和
JPEG 标准的兼容性。谷歌 称 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

海洋世界 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的支出条件的构建问题,比如说:大规模数据构建问题,共享代码库问题,从源代码构建的软件的连带问题。帮助多种语言并且跨平台,还协理自动化测试和配备、具有重现性(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

海洋世界 6

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

 

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

海洋世界 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

 

海洋世界 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,是Google开源的一个ROS系统匡助的2D和3D SLAM(simultaneous
localization and mapping)库。SLAM
算法结合来自五个传感器(比如,LIDAR、IMU 和
录像头)的多少,同步总结传感器的岗位并绘制传感器周围的条件。在产业界和学术界常见的传感器配置上,Cartographer
能实时建立全局一致的地图。(详情:https://github.com/googlecartographer/cartographer

 

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

海洋世界 9

 

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

 

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

海洋世界 10

 

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

 

41、Web应用 Tracing Framework   ★Star 2371

海洋世界 11

 

Tracing Framework 是一套库、工具,用于跟踪和调查复杂的 Web
应用。它就可以帮您发现代码的习性问题,并且帮你制作异常畅达的 60 FPS Web
应用。它近年来只可以用来特定的运用场面,并不是为利用于所有场景而设计,如若您在接纳过程中遭遇了问题,请呈递你的
Bug。(详情:https://github.com/google/tracing-framework

 

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

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

 

43、JavaScript 库 Closure Library   ★Star 2257

Closure Library 是一个无敌的 JavaScript 库,用于复杂的大规模的 Web
应用。它被许多 Google Web 应用使用,比如 Gmail 和 谷歌Docs。(详情: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

 

珍爱就收藏吧~