本文為大家整理了百度開源的70+項目,看看有沒有感興趣的。
![程序員的福利--百度的71個開源項目](http://p2.ttnews.xyz/loading.gif)
- JavaScript圖表庫 ECharts
ECharts開源來自百度商業前端數據可視化團隊,基於html5 Canvas,是一個純Javascript圖表庫,提供直觀,生動,可交互,可個性化定製的數據可視化圖表。創新的拖拽重計算、數據視圖、值域漫遊等特性大大增強了用戶體驗,賦予了用戶對數據進行挖掘、整合的能力。
- 分佈式配置管理平臺 Disconf
Distributed ConfigurationManagement Platform(分佈式配置管理平臺)專注於各種 分佈式系統配置管理 的通用組件/通用平臺, 提供統一的配置管理服務。
- 移動WebApp開發框架 Clouda
Clouda是基於node.js的Webapp開發框架,在使用Clouda時需要安裝node.js和MongoDB。
- 全新 3D 可視化庫 ECharts-X
ECharts-X是 ECharts 團隊推出的全新 3D 可視化庫,它是基於 ECharts 的擴展,底層深度整合了 WebGL 庫QTEK和 Canvas2D 庫ZRender。
- 百度的Javascript庫 Tangram
Tangram是Baidu開發的一套簡單可依賴的Javascript庫。
- 在線富文本編輯器 UMeditor
UMeditor,簡稱UM,是為滿足廣大門戶網站對於簡單發帖框,或者回復框需求所定製的在線富文本編輯器。 UM的主要特點就是容量和加載速度上的改變,全版本的代碼量為125k,而且放棄了使用傳統的iframe模式,採用了div的加載方式, 以達到更快的加載速度和零加載失敗率。
- Android自動化測試框架 Cafe
Cafe 測試框架是一款來自百度QA部門的具有開創性意義的Android平臺的自動化測試框架,框架覆蓋了Android自動化測試的各種需求。框架致力於實現跨進程測試、快速測試、深度測試,解決了Android自動化測試中的諸多難題,比如業界一直沒有解決的跨進程測試問題。
- Web 端的 UI 框架 BlendUI
BlendUI 是百度公司的一個 Web 前端 UI 框架。BlendUI能讓Webapp的體驗和交互與Native媲美。
- 百度音樂播放內核 MuPlayer
MuPlayer 是一款跨平臺、輕量級的音頻播放解決方案,是百度@音樂前端團隊開發維護的瀏覽端音頻播放內核,它基於HTML5 Audio及Flash音頻技術,已在百度音樂多個線上產品線中應用,具備很強的靈活性和穩定性。
- 輕量級UI組件 Magic
Magic是用JavaScript腳本開發的輕量級UI組件,具有性能高效、代碼量小、支持多種初始化方式等方面的優勢,Web前端開發者可以使 用Magic快速搭建前端功能比較複雜的網站。Magic的每個組件都有非常豐富的接口和事件處理,網站也提供了詳細的使用文檔和Demo演示。Web前 端開發者可以通過定製組件、初始化方式和插件獲得最輕量級版本。
- 高性能RPC框架 BGCC
BGCC(音:[bigsisi:])是百度具有完全知識產權的跨平臺、多語言、面向對象與服務的輕量級高性能RPC框架。 它支持事務級別的服務端消息主動推送,強大的接口級事務管理功能,包含自定義的通信協議、接口描述語言(bidl)、 強大的代碼生成引擎(bidl2sl),Java、C++通信無縫整合。
- 分佈式表格系統 Tera
Tera 是一個高性能、可伸縮的數據庫系統,被設計用來管理搜索引擎萬億量級的超鏈與網頁信息。為實現數據的實時分析與高效訪問,我們使用按行鍵、列名和時間戳全局排序的三維數據模型組織數據,使用多級Cache系統,充分利用新一代服務器硬件大內存、SSD盤和萬兆網卡的性能優勢,做到模型靈活的同時,實現了高吞吐與水平擴展。
- 基於 Node 的 JavaScript 同構解決方案 rebas
基於 Node 的 JavaScript 同構解決方案。提供了 saber 的服務端運行環境,使其具備從 SPA 到 MPA,從前端渲染到後端渲染的深度響應式能力。
- 面向c/c++語言的構建工具
Broc
broc是一款面向c/c++語言的構建工具,提供了編譯、分支依賴、依賴模塊下載等功能。不同於make,cmake等以庫文件鏈接的編譯方式,broc將依賴庫源代碼與程序源代碼一併同時進行編譯,這種方式可以避免程序源代碼與依賴庫編譯選項或平臺不一致導致的軟件兼容性問題;broc支持編譯結束後自動運行單元測試用例;藉助Jenkinsbroc還能完成軟件的持續集成。
- 富文本編輯器
Ueditor
UEditor是由百度web前端研發部開發所見即所得富文本web編輯器,具有輕量,可定製,注重用戶體驗等特點。
- 在線腦圖編輯器 Kity Minder
KityMinder 是百度FEX團隊的f-cube小組(原UEditor小組)的又一力作。作為一款在線的腦圖編輯工具,它有著很多Native編輯工具的交互體驗。KM與UE有著一樣的宗旨,就是注重最終用戶的使用體驗。同時,它充分發揮了Web雲存儲的優勢,可以直接將編輯中的腦圖同步到雲端。此外,藉由獨創的 “雲盤分享”功能,用戶可以一鍵將當前編輯的腦圖直接生成在線鏈接共享給其他用戶,實現無縫溝通。
- 輕量級的Canvas類庫
ZRender
zrender(Zlevel Render) 是一個輕量級的Canvas類庫,MVC封裝,數據驅動,提供類Dom事件模型,讓canvas繪圖大不同!
- 文件上傳組件 WebUploader
WebUploader 是由Baidu WebFE(FEX)團隊開發的一個簡單的以HTML5為主,FLASH為輔的現代文件上傳組件。在現代的瀏覽器裡面能充分發揮HTML5的優勢,同時又不摒棄主流IE瀏覽器,延用原來的FLASH運行時,兼容IE6+,Andorid 4+,IOS6+。兩套運行時,同樣的調用方式,可供用戶任意選用。
- 手勢識別與事件庫 Touch.js
Touch.js是移動設備上的手勢識別與事件庫, 由百度雲Clouda團隊維護,也是在百度內部廣泛使用的開發工具。
- 地圖可視化工具庫 Mapv
Mapv 是一款基於百度地圖的大數據可視化開源庫,可以用來展示大量的點、線、面的數據,每種數據也有不同的展示類型,如直接打點、熱力圖、網格、聚合等方式展示數據。
- 專注於移動端的滑動解決方案 iSlider
iSlider 是個非常平滑的滑塊,支持移動端 WebApp,HTML5App 和混合型的 App。
- 百度UI庫
ESUI
ESUI是一套簡單的UI Library,提供一系列的控件,能滿足基本頁面交互功能。ESUI的API與默認視覺皮膚遵循BAIDU ECOMUI標準。
- jQuery的彈窗插件 wBox
wBox輕量級的彈出窗口jQuery插件,基於jQuery1.4.2開發,主要實現彈出框的效果,並且加入了很多有趣的功能,比如callback函數,顯示隱藏層,Ajax頁面,iframe嵌入頁面等功能。
- 百度BI平臺 BiPlatform
百度開源的新一代一站式敏捷bi平臺,提供報表和OLAP服務的敏捷BI平臺。
- 前端集成解決方案 F.I.S
F.I.S(FIS)所提供的集成解決方案依託於一套靈活高效的 編譯工具,F.I.S藉助該編譯平臺對前端開發資源進行整合。接觸F.I.S,可以從該平臺入手。
- 移動端組件庫 Global Mobile UI
GMU(Global Mobile UI)是百度前端通用組開發的移動端組件庫,具有代碼體積小、簡單、易用等特點,組件內部處理了很多移動端的bug,覆蓋機型廣,能大大減少開發交互型組件的工作量,非常適合移動端網站項目。
- RPC框架 sofa-pbrpc
sofa-pbrpc(sofaprotobuf-based rpc)是使用Boost::Asio實現的基於GoogleProtocol Buffers RPC框架的網絡通信庫,在百度公司各部門得到廣泛使用。
- 百度文件系統 BFS-Baidu
百度的核心數據庫Tera將數據持久化在分佈式文件系統上,分佈式文件系統的性能、可用性和擴展性對整個上層搜索業務的穩定性與效果有著至關重要的影響。
- 企業級標準加載器 ESL
ESL 是一個瀏覽器端、符合AMD的標準加載器,適合用於現代Web瀏覽器端應用的入口與模塊管理。
- 前端移動框架 Saber
Saber 是 模塊化、組合式 的前端移動框架。
- 百度mysql分庫分表中間件服務器
heisenberg
heisenberg 是百度的熊照同學(id:brucexx)編寫的一款基於MySQL協議之上的分庫分表中間件服務器,支持各種靈活(velocity腳本自定義)的分庫分表規則,做到應用和分庫分表相隔離,並且為mysql進行dbproxy,減少了db的連接IO壓力,並且可做到讀寫分離以及replication的手工切換。
- doc 文檔在線編輯和預覽 wordonline
wordonline 是在線編輯和預覽 .doc 和 .docx 文檔的工具。
- JS模板引擎 BaiduTemplate
baiduTemplate希望創造一個用戶覺得“簡單好用”的JS模板引擎。
- 在線文件管理器 UFinder
UFinder 是百度前端團隊基於頁面級的文件管理應用。
- webSlide
webSlide是用於在線PPT演示文檔的javascript框架。
- 網絡幻燈片 nodePPT
nodePPT 是使用nodejs寫的網絡幻燈片。
- 前端模塊化解決方案 fis-pure
fis-pure 是基於FIS的純前端模塊化解決方案pure。
pure是基於FIS二次封裝能力封裝而成的解決方案,可以直接使用,也可以參考fis-pure自行封裝或組合使用插件來構建屬於自己的一體化解決方案。
- J2EE Velocity 前端集成方案 jello
jello 是針對服務端為 JAVA + Velocity 的前端集成解決方案。jello 為優化前端開發而生,提供前後端開發分離、自動性能優化、模塊化開發機制等功能。
- protobuf的Java開發包
jprotobuf
jprotobuf是針對Java程序開發一套簡易類庫,目的是簡化java語言對protobuf類庫的使用,使用jprotobuf可以無需再去了解.proto文件操作與語法,直接使用java註解定義字段類型即可。
- 人工智能軟件 WARP-CTC
WARP-CTC 是百度硅谷 AI 研究所 (SVAIL) 開源的百度關鍵人工智能 (AI) 軟件。
- 百度雲Go語言SDK
bcsgo
- 前端模塊加載解決方案 modJS
modJS 是一套的前端模塊加載解決方案。與傳統的模塊加載相比,modJS 會根據產品實際使用場景,自動選擇一種相應的方案,使最終的實現非常輕量簡潔。
- 公式編輯器 KityFormula
Kity Formula 為您提供公式表達式解析,可視化公式編輯,公式完美展示於一身的web端的整體解決方案。
- 高品質的 WebGL 類庫 Qtek
Qtek (WebGL GraphicLibrary) 是一個高品質的 WebGL 類庫,目前仍處於實驗階段。
物理組件:
https://github.com/pissang/qtek-physics
2D組件
https://github.com/pissang/qtek-2d
- 集群操作系統 Galaxy
Galaxy是一個數據中心操作系統,目標是最大化資源的利用率與降低應用部署運維代價,支持萬臺集群資源調度與管理,目前主要服務於百度網頁搜索離線架構業務,解決分佈式文件系統,分佈式表格系統,以及上層計算模塊運維與部署問題。
- 富瀏覽器端web應用框架 ER
ER 是百度公司的一個富瀏覽器端web應用的框架,適用於並能很方便地構建 一個整站式的AJAX web應用。
- 深度學習平臺 PaddlePaddle
PaddlePaddle(並行分佈式深度學習)是一個易於使用的、高效的、靈活的和可擴展的深度學習平臺,它最初是百度的科學家和工程師為了能讓百度產品能提供深度學習而開發的。
- 前端統計框架 ALog
ALog 是前端統計框架。
- Baidu Push SDK
Baidu Push SDK 是百度的雲推送 SDK 開發包。
- 企業級前端應用開發平臺 EDP
EDP是基於 Node 的前端應用開發平臺,是一個企業級前端應用的開發平臺,提供了常用的項目管理工具、包管理工具、調試工具、構建工具、代碼生成工具、代碼檢測工具等一系列開發時的支持,並允許用戶自定義自己的擴展。
- HTML5 音樂播放器 Player
Player 是 HTML5 版本音樂播放器,支持 iOS 設備。
演示地址:http://4.qdemo.sinaapp.com/html5/chrome/
- jQuery 遮罩插件 SlipHover
SlipHover 是一個基於 jQuery 的插件,它能夠感知鼠標移動方向,並在相應的方向(或反方向)以動畫的方式顯示出一個遮罩層,用來顯示標題或描述,應用到幻燈片或相冊中是個不錯的選擇。 SlipHover 還支持自定義遮罩高度、動畫時間、字體顏色、背景顏色、文字排版等等。
- 模板引擎 ETPL
ETPL是一個靈活、具有強大複用能力的高性能的模板引擎,適用於WEB前端應用中視圖的生成,特別是SPA(Single Page APP)類型的應用。
- 基於 LESS 的樣式工具庫 EST
EST(ECOM Styling Toolkit)是一個基於 LESS 的樣式工具庫,幫助您更輕鬆地書寫 LESS 代碼。EST提供了一系列方便 快捷的 mixin,只在調用時才輸出代碼。est 不希望提供直接給 HTML 調用的類名,用「樣式類」汙染 HTML 代碼的語義。當然您也可以根 據自己的項目需求基於 est 搭建樣式類庫,提供類名接口來進行快速開發。
演示地址:http://ecomfe.github.io/est/fiddle/
- 基於 SVG 的矢量圖形庫
Kity
Kity 是一個基於 SVG 的矢量圖形庫,幫助你快速在頁面上創建和使用矢量元素。
- 前端資源聚合平臺 Lights
Lights 是FIS包管理工具。提供便捷、易用的資源安裝、發佈、搜索,管理工具。用於團隊間快速共享資源,提升開發效率。
- EDP 擴展 edpx-zhixin
edpx-zhixin 是 edp 的一個擴展,提供給百度的FE開發搜索結果頁模板的工具。
- 服務虛擬化 Terminator
服務虛擬化指的就是虛擬出不穩定、不可用、未開發完全的服務。
- 前端集成解決方案 baidu yogurt
yogurt 是基於 fis 擴展針對服務端為 express.js 的前端集成解決方案。
- 移動 Web 的
CSS 樣式工具庫 Rider
rider是一個基於 Stylus、專注於移動 Web 的CSS 樣式工具庫。
- kraken.js 擴展 Yog
Yog 是一個基於 Express.js 的 Node.js Web 應用引導模塊,擴展了 kraken.js。
- 基於Nodejs 的前端工具集
FEinit
FEinit 是基於Nodejs 的前端工具集,因為是在windows系統開發,所以目前僅適合 windows 系統。
- Node Log 統計方案 yog-log
yog-log 是 Node Log 統計方案,是yog框架的log統計模塊,支持中間件或者單獨使用等方式,兼容ODP日誌格式與配置。
- 輕量級覆蓋率測試工具 logcover
logcover 是一款非常便捷的統計測試用例異常日誌覆蓋率的工具。可清晰地分析出程序源代碼中異常日誌的覆蓋情況,檢驗測試充分度,指導測試用例完善。
- 知心組件庫 moye
Moye 是 ECOM UI 1.1 規範的一個輕量級實現。
- fis-postprocessor-amd
fis-postprocessor-amd 能識別 js 中 amd 依賴,自動包轉isMod 的 js 為 amd。
- EDP 的移動端擴展 EDPM
edpx-mobile(EDPM) 是 EDP 的移動端擴展。EDPM是對 edp 功能的補充,為移動項目提供項目初始化、腳手架、調試服務器等功能。
- 前端代碼風格工具 FECS
FECS 是基於 Node.js 的前端代碼風格工具。
- WEB 組件規範 xspec
xspec 是一系列基於WEB COMPONENTS的組件規範,致力於藉助規範的力量讓組件發揮更大的價值。
- yog-pm
yog-pm是在pm2的基礎上提供了幾個增強命令,提高pm2的易用性和穩定性。
- Express.js 中間件 yog-view
yog-view 是一個 Express.js 中間件,用來優化 js/css 輸出排序,允許在 bigpipe 模式中顯示。
閱讀更多 SoftCloud 的文章