盤點 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也推進了全球開源事業的發展。愈來愈多的互聯網公司重視開源事業的發展,而且積極投身到開源事業當中。  
相關文章
相關標籤/搜索