下拉刷新
目录

《HelloGitHub》第 18

HelloGitHub 分享 GitHub 上有趣、入门级的开源项目,每月 28 号更新一期。 这里有好玩和入门级的开源项目、开源书籍、实战项目、企业级项目,让你用极短的时间感受到开源的魅力,对开源产生兴趣。

提示:点击 可以按照对应「分类」查看月刊。
C 项目
Star 7.7kFork 817Watch 206

用 C 从零创建一个简单的数据库

CSS 项目
Star 3.9wFork 4.9kWatch 1k

基于 Material Design 的现代响应式前端框架,简化了前端的开发,文档丰富。官网

Go 项目
Star 2.4wFork 2.1kWatch 525

Go 语言最受欢迎的 Web 框架之一,具有:高性能、便于扩展、轻量的特点,示例代码:

package main import "github.com/labstack/echo" func main() { e := echo.New() e.GET("/", callback) e.Logger.Fatal(e.Start(":3000")) } func callback(ctx echo.Context) error { return ctx.HTML(200, "<h1>你好 echo</h1>") }
echo
Star 3.3wFork 5.3kWatch 1.3k

开源分布式 NewSQL 数据库,能优雅的替换传统的数据库中间件、数据库分库分表等 Sharding 方案。具备如下核心特性:

  • SQL支持 (TiDB 是 MySQL 兼容的)
  • 水平线性弹性扩展
  • 分布式事务
  • 跨数据中心数据强一致性保证
  • 故障自恢复的高可用
tidb
Java 项目
Star 2.9kFork 706Watch 155

一个 TV Leanback 风格桌面,基于 Leanback 库开发,符合 Android TV 官方交互规范

AndroidTVLauncher
Star 398Fork 167Watch 44

spring-data-jpa 和 jQuery datatables 集成工具。极大简化基于 datatables 数据表格的开发,示例代码:

// 前端代码 $(document).ready(function() { var table = $('table#sample').DataTable({ 'ajax': { 'contentType': 'application/json', 'url': '/data/users', 'type': 'POST', 'data': function(d) { return JSON.stringify(d); } }, // java 代码 server-side becomes @JsonView(DataTablesOutput.View.class) @RequestMapping(value = "/data/users", method = RequestMethod.POST) public DataTablesOutput<User> getUsers(@Valid @RequestBody DataTablesInput input) { return userRepository.findAll(input); }
spring-data-jpa-datatables
Star 2.3wFork 9.7kWatch 950

轻量级分布式任务调度框架,其核心设计目标是:开发迅速、学习简单、轻量级、易扩展,文档齐全。官网

JavaScript 项目
Star 8.1wFork 8.7kWatch 1.2k

Google Chrome 团队开源的面向 Node.js 的,基于 DevTools 协议的远程 Headless Chrome 控制库,它可以生成网页截图、PDF、抓取单页应用与网页内容、进行自动化表单提交、界面测试与模拟键盘输入等功能。示例代码如下:

// 访问 https://example.com 并将截图保存为 example.png const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto('https://example.com'); await page.screenshot({path: 'example.png'}); await browser.close(); })();
Star 716Fork 191Watch 33

简洁优雅而功能强大的选择器,使用简单,适应各种UI环境,功能强大,丰富的参数和回调函数 。它包含了 autocomplete、ajax 数据源、多选择 Tag、i18n 国际化,结果列表分页展示,键盘快捷操作等

//defined a array, the data returned at the server side is also used that format: //Array[{Object},{...}] var data = [ {id:1 ,name:'Chicago Bulls',desc:'芝加哥公牛'}, {id:2 ,name:'Cleveland Cavaliers',desc:'克里夫兰骑士'}, {id:3 ,name:'Detroit Pistons',desc:'底特律活塞'}, {id:4 ,name:'Indiana Pacers',desc:'印第安纳步行者'} ]; //init SelectPage $('#selectpage').selectPage({ showField : 'desc', keyField : 'id', data : data });
SelectPage
Star 5.7kFork 758Watch 189

微信的第三方客户端。在完整实现 Web 微信功能的基础上,新增并优化部分功能,重设计整体 UI,提供更好的体验。Mac 安装命令:brew cask install wewechat

weweChat
Star 2.2kFork 456Watch 80

展示三维模型的 Vue 组件,支持模型操作和模型点击事件,能自动缩放模型到合适大小并校正偏移,目前支持 obj、stl、dae 和 json 格式的模型,示例代码:

<template> <model-obj src="example/models/obj/LeePerrySmith.obj"></model-obj> </template> <script> import { ModelObj } from 'vue-3d-model' export default { components: { ModelObj } } </script>
vue-3d-model
Star 1.5wFork 1.4kWatch 210

扁平化的日期选择组件,项目源码使用 TypeScript 编写,可以学习使用 Typescript 编写 JS 插件,Typescript 语言的好处是:可以在多人协作中避免一些变量类型错误的问题,从而提高效率。使用示例代码:

// ConnonJS 方式引入 const flatpickr = require("flatpickr"); flatpickr("#myID", {}); flatpickr(".myClass", {}); // jQuery 方式引入 $(".selector").flatpickr(optional_config);
flatpickr
PHP 项目
Star 4.3kFork 2kWatch 228

乌云公开漏洞、知识库爬虫和搜索

wooyun_public
Python 项目
Star 4.3kFork 515Watch 153

一个帮助学习主要算法的库,可以通过理解这些算法的实现,提高自己的算法水平。冒泡排序示例:

>>> from pygorithm.sorting import bubble_sort >>> my_list = [12, 4, 3, 5, 13, 1, 17, 19, 15] >>> sorted_list = bubble_sort.sort(my_list) >>> print(sorted_list) >>> [1, 3, 4, 5, 12, 13, 15, 17, 19]
Star 1.2wFork 2kWatch 381

强大的提取 Web 的内容、文章的库,支持多种语言,安装命令 pip3 install newspaper3k。示例代码:

>>> from newspaper import Article >>> url = 'http://fox13now.com/2013/12/30/new-year-new-laws-obamacare-pot-guns-and-drones/' >>> article = Article(url) >>> article.download() >>> article.html '<!DOCTYPE HTML><html itemscope itemtype="http://...' >>> article.parse() >>> article.authors ['Leigh Ann Caldwell', 'John Honway'] >>> article.publish_date datetime.datetime(2013, 12, 30, 0, 0) >>> article.text 'Washington (CNN) -- Not everyone subscribes to a New Year's resolution...' >>> article.top_image 'http://someCDN.com/blah/blah/blah/file.png' >>> article.movies ['http://youtube.com/path/to/link.com', ...] >>> from newspaper import Article >>> url = 'http://www.bbc.co.uk/zhongwen/simp/chinese_news/2012/12/121210_hongkong_politics.shtml' >>> a = Article(url, language='zh') # Chinese >>> a.download() >>> a.parse() >>> print(a.text[:150]) 香港行政长官梁振英在各方压力下就其大宅的违章建 筑(僭建)问题到立法会接受质询,并向香港民众道歉。 梁振英在星期二(1210日)的答问大会开始之际 在其演说中道歉,但强调他在违章建筑问题上没有隐瞒的 意图和动机。 一些亲北京阵营议员欢迎梁振英道歉, 且认为应能获得香港民众接受,但这些议员也质问梁振英有 >>> print(a.title) 港特首梁振英就住宅违建事件道歉
Star 1.5wFork 1.7kWatch 222

用于生成假数据的库,支持多种语言,你值得拥有。示例代码:

fake.address() # '辽宁省雪市静安廉街b座 998259' fake.street_address() # '巢湖街U座' fake.building_number() # 'x座' fake.city_suffix() # '市' fake.latitude() # Decimal('-0.295126') fake.province() # '湖北省'
其它
Star 6.3kFork 1.3kWatch 160

一个自由的站点,主要包含了 CTF 的基础知识 、常见题型、解题思路以及常用工具等,希望可以帮助你更快地了解 CTF 竞赛以及网络安全相关知识

Star 4.7kFork 1.1kWatch 199

中国 5 级行政区域 MySQL 库

Star 3.6kFork 524Watch 218

国内顶尖团队的开源地址

机器学习
Star 3.3wFork 9kWatch 2.2k

Deep Learning 中文版

目录
  • C 项目
  • CSS 项目
  • Go 项目
  • Java 项目
  • JavaScript 项目
  • PHP 项目
  • Python 项目
  • 其它
  • 机器学习