盘点 Github 所用到的开源项目

http://www.php100.com/html/it/mobile/2014/0401/6736.htmlphp





在致力于开源事业的同时,Github也使用一些很是优秀的开源项目的来打造本身的平台与服务,本文总结了Github所用到各类开源项目,它们分别扮演着不一样的角色。 

1.Linguist 

Linguist直译是语言学家的意思,采用Ruby开发。使用它能够自动分辨项目所使用的开发语言。Github使用该开源项目主要是用来探测代码所用语言,突出显示代码、忽略二进制文件、防止文件生成存在差别以及生成语言分解图等。 

托管地址:  https://github.com/github/linguist  

2.pjax 

pjax是对ajax + pushState的封装,让你能够很方便的使用pushState技术。同时支持缓存和本地存储,再次访问的时候能够直接读取本地数据。展示方式支持动画技术,可使用系统自带的动画方式,也能够自定义动画展示方式。 

官网:  http://pjax.heroku.com/  

托管地址:  https://github.com/defunkt/jquery-pjax  

3.Elasticsearch 

Elasticsearch是一个实时的、分布式的RESTful搜索引擎,基于Apache Lucene开发。具有高可靠性,支持很是多的企业级搜索用例。它对外提供一系列基于Java和HTTP的API,用于索引、检索、修改大多数配置。 

官网:  http://www.elasticsearch.org/  

托管地址:  https://github.com/elasticsearch/elasticsearch  

4.Ruby on Rails 

Rails是一个使用Ruby语言写的开源Web应用框架,它是严格按照MVC结构开发的。它努力使自身保持简单,来使实际的应用开发代码更少,使用最少的配置。 

官网:  http://rubyonrails.org/  

托管地址:  https://github.com/rails/rails  

5.redis 

Redis是一个开源、支持网络、基于内存、键值对存储的数据库。基于C语言开发,与其余不少键值对数据库的不一样之处在于, Redis不只支持简单的字符串键值对,它还提供了一系列数据结构类型值,好比列表、哈希、集合和有序集, 并在这些数据结构类型上定义了一套强大的API。 

官网:  http://redis.io/  

托管地址:  https://github.com/antirez/redis  

6.sprockets 

sprockets是一个Ruby库,用于编译和服务Web资产。它能够用来检查JavaScript和CSS等文件之间的依赖关系,它还拥有一个强大的预处理器管道,容许开发者在CoffeeScript、Sass、SCSS和LESS等语言里编写资产。

托管地址:  https://github.com/sstephenson/sprockets  

7.libgit2 

libgit2是一个可移植、纯C语言实现的Git核心开发包,做为一款带有稳固API的可重入连接库,libgit2容许你使用任何语言来编写Git应用。此外,libgit2能够应用在各个平台上,包括Unix、Linux、MacOS X、Windows等。 

官网:  http://libgit2.github.com/  

托管地址:  https://github.com/libgit2/libgit2  

8.Rugged 

Rugged是一个C语言实现的库,主要用来支持在Ruby中访问libgit2开发包。 

托管地址:  https://github.com/libgit2/rugged  

9.bcrypt-ruby 

bcrypt-ruby是一个用于OpenBSD bcrypt()密码哈希算法的Ruby绑定,开发者可使用它把用户密码变成哈希数,安全地存储用户密码,预防黑客攻击。 

官网:  http://bcrypt-ruby.rubyforge.org  

托管地址:  https://github.com/codahale/bcrypt-ruby  

10.html-pipeline 

Github HTML处理过滤器和工具,是由几个HTML工具打包而成的。该模块还包含一个基于内容过滤来定义DOM的小型框架。 

托管地址:  https://github.com/jch/html-pipeline  

11.gemoji 

gemoji里面主要包含emoji表情的图片和名称。 

托管地址:  https://github.com/github/gemoji  

12.Jekyll 

Jekyll是一个静态站点生成器,它会根据网页源码生成静态文件。它提供了模板、变量、插件等功能,因此实际上能够用来编写整个网站。 

官网:  http://jekyllrb.com/  

托管地址:  https://github.com/jekyll/jekyll  

13.Gollum 

Gollum是一个简单的基于Git的wiki系统,Github的wiki就是由它实现的。支持markdown编写。它同时带有一个本地的前端,你能够在浏览器里编写保存页面,系统会在后端自动提交。由于它是一个Git repo,因此你也能够把它push到GitHub。 

托管地址:  https://github.com/gollum/gollum  

14.Octokit 

Octokit是Github API客户端库集合,容许开发者使用本身擅长的编程语言来访问Github API。Octokit项目包含Ruby、Objective-C和.NET、GO客户端。 

托管地址:  https://github.com/octokit  

15.Hubot 

Hubot是Github开源的运维机器人,它在Github员工的平常生活中扮演着很是重要的角色。它很是灵活,任何人均可以编写本身的脚原本扩展基本功能。脚本使用的语言是CoffeeScript,而Hubot运行在Node.js上。 

官网:  http://hubot.github.com/  

托管地址:  https://github.com/github/hubot  

16.D3.js 

D3.js是一个基于JavaScript数据展现库,用于操做基于数据的HTML文档。它可以帮助咱们以HTML或SVG的形式快速可视化展现,进行交互处理,合并平稳过渡,在Web页面演示动画。它既能够做为一个可视化框架(如Protovis),也能够做为构建页面的框架(如jQuery)。 

官网:  http://d3js.org/  

托管地址:  https://github.com/mbostock/d3  

17.Plax 

Plax是一个jQuery插件,能够经过鼠标的悬浮或移动来触发视差滚动效果。开发者可使用它制做40四、500以及About页面。 

官网:  [/url][url=http://cameronmcefee.com/plax/]http://cameronmcefee.com/plax/  

托管地址:  [/url][url=https://github.com/cameronmcefee/plax]https://github.com/cameronmcefee/plax  

18.Ace 

Ace是一个开源的、独立的、基于浏览器的代码编辑器,能够嵌入到任何Web页面或JavaScript应用程序中。Ace支持超过40种语言语法高亮,并可以处理代码多达400万行的大型文档。Ace开发团队称,Ace在性能和功能上能够媲美本地代码编辑器(如Sublime Text、TextMate和Vim等)。  

官网:  [/url][url=http://ace.c9.io/]http://ace.c9.io/  

托管地址:  [/url][url=https://github.com/ajaxorg/ace]https://github.com/ajaxorg/ace  

19.Zepto.js 

Zepto是为现代浏览器打造的轻量级JavaScript库,它与jQuery有着相似的API。若是你会jQuery,那么也就会使用Zepto了。 

官网:  http://zeptojs.com/  

托管地址:  [/url][url=https://github.com/madrobby/zepto]https://github.com/madrobby/zepto  

20.ZeroClipboard 

ZeroClipboard使用一个不可视化的Adobe Flash动画和一个JavaScript接口便可轻易把文本的拷贝到粘贴板的库。 

官网:  [/url][url=http://zeroclipboard.org/]http://zeroclipboard.org/  

托管地址:  https://github.com/zeroclipboard/zeroclipboard  

21.Charlock Holmes 

Charlock Holmes是一个字符编码检测库,主要用于检测字符和代码转换,以确保代码字符为UTF-8。 

托管地址:  https://github.com/brianmario/charlock_holmes  

22.Puppet 

Puppet是一个自动管理引擎,能够适用于Linux、Unix以及Windows平台。所谓配置管理系统,就是管理机器里面诸如文件、用户、进程、软件包这些资源。不管是管理1台,仍是上万台机器Puppet都能轻松搞定。 

官网:  http://www.puppetlabs.com/puppet/introduction/  

托管地址:  https://github.com/puppetlabs/puppet  

23.Moment.js 

Moment.js是一款很是轻量且健壮的JavaScript日期处理类库,提供了日期格式转换、日期验证等功能。Github使用它主要用来显示前端时钟。 

官网:  http://momentjs.com/  

托管地址:  [/url][url=https://github.com/moment/moment]https://github.com/moment/moment  

24.Bower 

Bower是由Twitter开源的一款包管理器,主要用于Web前端开发。它提供了一套通用、客观的解决方案。它经过一个API暴露包之间的依赖模型,这样更利于使用更合适的构建工具。Bower没有系统级的依赖,在不一样App之间也不互相依赖,依赖树是扁平的。 

官网:  http://bower.io/  

托管地址:  [/url][url=https://github.com/bower/bower]https://github.com/bower/bower  

25.Resque 

Resque是一个基于Redis的后端Ruby库,由Github开源。其主要用来建立后台任务、而且把这些任务安置在多个队列上,等待处理。它还自带前台管理功能,方便查看执行状况。 

托管地址:  [/url][url=https://github.com/github/resque]https://github.com/github/resque  

能够说,开源成就了Github,Github也推进了全球开源事业的发展。愈来愈多的互联网公司重视开源事业的发展,而且积极投身到开源事业当中。  
相关文章
相关标签/搜索