File: README.md
简介
HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。每月 28 号以月刊的形式更新发布,内容包括:有趣、入门级的开源项目、开源书籍、实战项目、企业级项目等,让你用很短时间感受到开源的魅力,爱上开源!
内容
获得更好的阅读体验 官网 或 HelloGitHub 公众号
| :card_index: | :jack_o_lantern: | :beer: | :fish_cake: | :octocat: |
|---|---|---|---|---|
| 第 124 期 | 第 123 期 | 第 122 期 | 第 121 期 | |
| 第 120 期 | 第 119 期 | 第 118 期 | 第 117 期 | 第 116 期 |
| 第 115 期 | 第 114 期 | 第 113 期 | 第 112 期 | 第 111 期 |
| 第 110 期 | 第 109 期 | 第 108 期 | 第 107 期 | 第 106 期 |
| 第 105 期 | 第 104 期 | 第 103 期 | 第 102 期 | 第 101 期 |
| 第 100 期 | 第 99 期 | 第 98 期 | 第 97 期 | 第 96 期 |
| 第 95 期 | 第 94 期 | 第 93 期 | 第 92 期 | 第 91 期 |
| 第 90 期 | 第 89 期 | 第 88 期 | 第 87 期 | 第 86 期 |
赞助
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
声明
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。联系我
File: content/en/HelloGitHub01.md
HelloGitHub Vol.01
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
CSS
1、typo.css:中文网页重设与排版,为了一致化浏览器排版效果,构建最适合中文阅读的网页排版。包括桌面和移动平台,预览
JavaScript
2、activate-power-mode:爆炸输入效果,在线演示
3、ant-design:阿里开源的一套企业级的 UI 设计语言和 React 实现。中文文档,样式偏向于后端,展示效果十分漂亮
4、VeryNginx:一个功能强大而对人类友好的 Nginx 扩展程序。VeryNginx 文档
Python
5、awesome-python-webapp:廖老师的 Python 入门教程中的实践项目的代码,教程在线阅读
6、beijing_bus:北京实时公交,可以显示查询的公交到达某站还需多久
7、Minos:一个基于 Tornado/MongoDB/Redis 的社区系统
8、tushare:TuShare 是一个免费、开源的 Python 财经数据接口包,TuShare 文档
Other
9、archey-osx:命令行中显示 Mac OS X 计算机的基本信息
10、awesome-python-cn:awesome-python 中文版
11、github:《GitHub 漫游指南》该指南能够让新手学会如何使用 GitHub 网站,从而加入到开源社区。phodal 从他和 GitHub 的青涩故事写起,全方位地介绍了 GitHub 这个网站,以及如何合理地使用这个网站
12、Learning-SICP:《计算机程序的构造和解释》公开课
Book
13、design_patterns:《图说设计模式》,在线阅读
14、intermediatePython:《Intermediate Python》Python 进阶。这是本很薄的 Python 入门级书籍,每篇内容花个五分钟就能看完、看懂、有收获的那种。
15、linuxtools_rst:《Linux 工具快速教程》,在线阅读
16、python3-cookbook:《Python Cookbook 3rd 中文版》,在线阅读
17、the_new_world_linux:《Linux 下的惬意生活》,在线阅读
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
File: content/en/HelloGitHub02.md
HelloGitHub Vol.02
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
CSS
1、github-markdown-css:仿 GitHub 的 Markdown 的样式,就是使用了这个 CSS 后,Markdown 展示效果和 GitHub 的大致一样。示例
JavaScript
2、ant-motion:阿里开源的项目,一套 React 框架动效解决方案,可以帮助开发者,更容易的在项目中使用动效。同时可以方便快捷地制作一个公司的介绍页,在线演示
3、jquery-weui:可能是最好用 WeUI 版本,展示效果如下:
4、listen1_desktop:Listen 1 让你用一个网页就能听到多个网站的在线音乐,支持各种平台。如图:
5、ssbc:Python Django 写的种子搜索网站——手撕包菜,如图:
6、waitForImages:背景加载完事件,示例代码:
<script type="text/javascript" src="http://catmull.uk/downloads/bg-loaded/bg-loaded.js"></script>
<script type="text/javascript">
$('body').bgLoaded({
afterLoaded : function() {
alert('Background image done loading');
}
});
</script>7、wechat-h5-boilerplate:为腾讯微信优化的 HTML5 动效模板,帮助你快速构建全屏滚动型 HTML5 页面,示例
Python
8、algorithm:老齐的 Python 算法教程
9、mincss:Python 写的用来找到 CSS 中没有用到的代码片段,并删除。适用于:想要做一个页面,但是不会写 CSS 人。示例代码如下:
#coding:utf-8
#!/usr/bin/env python
from __future__ import print_function
import sys, os
sys.path.insert(0, os.path.abspath('.'))
from mincss.processor import Processor
# 这里改成想要参考的页面
URL = 'http://localhost:9000/page.html'
def run():
p = Processor()
p.process(URL)
# 输出INlink的css的简化前和简化后的css代码
print("INLINES ".ljust(79, '-'))
for each in p.inlines:
print("On line %s" % each.line)
print('- ' * 40)
print("BEFORE")
print(each.before)
print('- ' * 40)
print("AFTER:")
print(each.after)
# 输出link引用的css的简化前和简化后的css代码
print("LINKS ".ljust(79, '-'))
for each in p.links:
print("On href %s" % each.href)
print('- ' * 40)
print("BEFORE")
print(each.before)
print('- ' * 40)
print("AFTER:")
print(each.after)
if __name__ == '__main__':
run()10、python-gems:有趣的 Pyhton 代码片段集合
11、python-goose:Goose 用于文章提取器,提取中文内容的示例代码:
>>> from goose import Goose
>>> from goose.text import StopWordsChinese
>>> url = 'http://www.bbc.co.uk/zhongwen/simp/chinese_news/2012/12/121210_hongkong_politics.shtml'
>>> g = Goose({'stopwords_class': StopWordsChinese})
>>> article = g.extract(url=url)
>>> print article.cleaned_text[:150]
香港行政长官梁振英在各方压力下就其大宅的违章建筑(僭建)问题到立法会接受质询,并向香港民众道歉。
梁振英在星期二(12月10日)的答问大会开始之际在其演说中道歉,但强调他在违章建筑问题上没有隐瞒的意图和动机。
一些亲北京阵营议员欢迎梁振英道歉,且认为应能获得香港民众接受,但这些议员也质问梁振英有Other
12、leetcode-solutions:Leetcode OJ 的 Python 算法实现
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
File: content/en/HelloGitHub03.md
HelloGitHub Vol.03
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
CSS
1、animate.css:提供炫酷动画效果,同时方便、易用、跨浏览器的 CSS 库。在线演示
2、mui:最接近原生 APP 体验的高性能框架。性能和体验的差距,一直是 mobile App 开发者放弃 HTML5 的首要原因。mui 框架有效的解决了这些问题,这是一个可以方便开发出高性能 App 的框架,也是目前最接近原生 App 效果的框架。mui 官网
Go
3、pholcus:Pholcus 是 Go 写的重量级爬虫,纯 Go 语言编写的高并发、分布式、重量级爬虫软件,支持单机、服务端、客户端三种运行模式,拥有 Web、GUI、命令行三种操作界面,功能齐全、强大。使用手册,使用展示如图:
Java
4、greys-anatomy:Greys 是 Java 在线问题诊断工具。
JavaScript
5、editor.md:是一款开源的、可嵌入的 Markdown 在线编辑器(组件),基于 CodeMirror、jQuery 和 Marked 构建。在线尝试,使用展示如图:
6、OS.js:JavaScript 写的基于浏览器上的桌面操作系统。在线演示,使用展示如图:
Python
7、KindleEar:这是一个运行在 Google App Engine(GAE) 上的 Kindle 个人推送服务应用,生成排版精美的杂志模式 mobi/epub 格式自动每天推送至您的 Kindle 或其他邮箱。
8、walle-web:Walle(瓦力) 一个 Web 部署系统工具,可能也是个持续发布工具,配置简单、功能完善、界面流畅、开箱即用!支持 git、svn 版本管理,支持各种 Web 代码发布,静态的 HTML,动态 PHP,需要编译的 Java 等。中文介绍,使用展示如图:
Other
9、css-creating:CSS 创作指南
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
File: content/en/HelloGitHub04.md
HelloGitHub Vol.04
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
Java
1、cachecloud:Sohu's Open Source Redis Private Cloud Platform. This is an enterprise-level online management platform for Redis, supporting various architectures such as Cluster and Sentinel, which can effectively reduce the operational costs of Redis at a large scale.
JavaScript
2、zhihudaily-vue:用 Vue.js 写的知乎日报手机 Web 版,需打开 chrome 浏览器的手机模拟功能,来获得比较好的浏览效果。访问展示图如下:
3、zingtouch:支持移动端各种触摸动作包含:转动、挥动、滑动等动作的库,官方网站,展示图如下:
Python
4、flask-admin:我工作中需要写一个微型的管理系统,用的就是这个框架。简直快餐型,页面都写好了,只要设置好相关配置就可以跑起来了。唯一缺点就是文档中的例子少,开发一些特定的需求需要自己看源码,才能知道如何改。文档,下面是我跑起来之后的样子:
5、python-guide:Requests 库的作者——kennethreitz,写的 Python 入门教程。不单单是语法层面的,涵盖项目结构、代码风格,进阶、工具等方方面面。虽然是英文版(中文翻译版),但我这个英语渣都能看懂,你肯定也可以,快去看看吧,开卷有益。在线阅读
6、python-sdk:七牛云存储 SDK。我自己在用他家的服务,上手简单、有免费额度,可以用来做‘图床’,同时,有了这个 SDK 可以写一些好用的小工具。注意:图床不能随便用,我曾经就用超了,账户的钱能扣成负数!
Other
7、AndroidInterview-Q-A:这个项目主要是国内一线互联网公司的 Java 和 Android 方面的内部面试题。
8、awesome-mac:排版相当好的一个 awesome 系列文章,文中介绍了很多 Mac 上好用的工具。
9、Front-end-Web-Development-Interview-Question:前端开发面试题大收集
10、interview:笔试面试知识整理(涵盖:IOS、Android、计算机基础),在线阅读
11、interview_python:关于 Python 的面试题
12、neural-networks-and-deep-learning:《神经网络与深度学习》相关代码 Python 实现,神经网络与深度学习-中文在线阅读,该书中的相关理论的 Python 代码实现
13、PyZh:Python 经典的技术文章的翻译和收集,在线阅读
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
File: content/en/HelloGitHub05.md
HelloGitHub Vol.05
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
C#
1、WeiXinMPSDK:微信公众平台 SDK,支持 .NET Framework 及 .NET Core。已支持微信公众号、企业号、开放平台、微信支付、JSSDK。此项目开源、免费、持续维护。
Go
2、gh-ost:GitHub 开源的在线修改表结构工具。目的是解决一个经常碰到的问题:不断变化的产品需求会不断要求更改 MySQL 表结构。gh-ost 通过一种影响小、可控制、可审计、操作简单而且安全的方式来改变线上表结构。中文简介
3、gogs:用 Go 写的一款极易搭建的自助 Git 服务,支持所有平台。就像 GitLab 一样的服务,但是 GitLab 是基于 ruby 语言的。另外:完善的中文文档、支持 Go 语言支持的所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。中文介绍
JavaScript
4、share.js:一键分享到微博、QQ 空间、QQ 好友、微信、腾讯微博、豆瓣等社交网站的 JavaScript 项目。在线演示
PHP
5、pinyin:基于 CC-CEDICT 词典的中文转拼音工具,更准确的支持多音字的汉字转拼音解决方案,示例代码:
use OvertruePinyinPinyin;
$pinyin = new Pinyin();
$pinyin->convert('带着希望去旅行,比到达终点更美好');
// ["dai", "zhe", "xi", "wang", "qu", "lv", "xing", "bi", "dao", "da", "zhong", "dian", "geng", "mei", "hao"]
$pinyin->convert('带着希望去旅行,比到达终点更美好', PINYIN_UNICODE);
// ["dài","zhe","xī","wàng","qù","lǚ","xíng","bǐ","dào","dá","zhōng","diǎn","gèng","měi","hǎo"]
$pinyin->convert('带着希望去旅行,比到达终点更美好', PINYIN_ASCII);
//["dai4","zhe","xi1","wang4","qu4","lv3","xing2","bi3","dao4","da2","zhong1","dian3","geng4","mei3","hao3"]Python
6、flaskbb:基于 Flask 框架做的论坛,功能有限,轻量级的论坛应用在线文档,可以在这个项目上进行二次开发,实现更加复杂的功能。在线预览
7、fuck-login:模拟登录一些知名的网站,为了方便爬取需要登录的网站。注意:控制爬虫的爬取频率!
8、superset:企业级的数据探索、展示平台。功能很强大,可以用来做数据分析、展示。如下图:
Other
9、bytesize-icons:极小、极简的 SVG 图标集合,在线演示。
10、gitignore:各种 gitignore 模版,特别全,应该能找到你需要的。什么是 gitignore 文件。
11、security-guide-for-developers:这是一个实际工作中会用到的安全 checklist。作为一个 real world web developer 你应该在实际工作中不断地谨慎使用这套列表,减少安全隐患。中文翻译版
12、Solve-App-Store-Review-Problem:App Store 审核未通过的解决方案。
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
File: content/en/HelloGitHub06.md
HelloGitHub Vol.06
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
C#
1、Cowboy:一个基于 .NET/C# 实现的开源 WebSocket 网络库。详细介绍
Go
2、wukong:悟空引擎是一个高度可定制的全文搜索引擎,为什么要有悟空引擎,入门教程,这个项目的搜索引擎原理如下:
Java
3、disconf:一个企业级的分布式配置管理平台,专注于各种分布式系统配置管理的通用平台,提供统一的配置管理服务。核心目标:一个 jar 包,到处运行。在线文档
4、moco:开发过程中需要依赖一些接口,这些接口要么是搭建环境困难,要么是还没有实现,要么是交互比较复杂。这种情况下,使用 mock server 来 mock(模拟)这些接口,以便开发和测试能够正常进行。快速上手步骤:
1. 下载 Moco:https://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/0.11.0/moco-runner-0.11.0-standalone.jar
2. 写需要返回的reponse数据格式如下:
[
{
"response" :
{
"text" : "Hello, Moco"
}
}
]
(文件名:foo.json)
3.运行
java -jar moco-runner-<version>-standalone.jar http -p 12306 -c foo.json
4. 访问 http://localhost:12306,你将会看到 “Hello, Moco”JavaScript
5、nodeppt:这可能是迄今为止最好的网页版演示库,在线演示
6、vue-sui-demo:这是一个用 Vue 和 SUI-Mobile 写的移动端 Demo,可以用来学习 Vue.js。项目线上预览,效果图如下:
Python
7、amazing-qr:Python 写的生成动态、彩色、各式各样的二维码,详细的中文文档,通过 qrcode 生成的二维码样式如下:
8、Young:基于 Tornado 框架、MongoDB 数据库,写的功能丰富的社区项目。详细的安装步骤,适合学习如何创建社区类 Web App。在线预览,项目运行效果图:
Swift
9、12306ForMac:非官方的 12306 购票,Mac OS 客户端
Other
11、gvm:Go 版本管理工具,可以通过命令,无痛切换不同的 Go 版本,示例指令:
1. 安装gvm:bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
2. 根据提示,在shell配置中加入:source /PATH/.gvm/scripts/gvm
3. 以下为常用命令:
gvm install go1.4 # 安装制定版本的GO
gvm use go1.4 # 使用制定版本的GO
4. Mac下安装Go时如果出现错误,就安装依赖的库:
xcode-select --install
brew update
brew install mercurial
5. 我在使用中发现的问题:
安装Go时没有进度条12、LearningNotes:很全面的学习笔记,偏向 Android 和 Java
13、weapp-ide-crack:【应用号】IDE + 破解 + Demo
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
File: content/en/HelloGitHub07.md
HelloGitHub Vol.07
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
C
C#
2、MongoCola:MongoCola 是一个开源的 MongoDB 管理工具。持续开发、维护已经有五年了,开发历程,效果图如下:
C++
3、cpr:C++ 版 Request for human,在线文档,示例代码:
#include <cpr/cpr.h>
int main(int argc, char** argv) {
auto r = cpr::Get(cpr::Url{"https://api.github.com/repos/whoshuu/cpr/contributors"},
cpr::Authentication{"user", "pass"},
cpr::Parameters{{"anon", "true"}, {"key", "value"}});
r.status_code; // 200
r.header["content-type"]; // application/json; charset=utf-8
r.text; // JSON text string
}CSS
4、cssicon:纯 CSS 实现的 icon
Go
5、beego:一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框架,齐全的文档(中文),丰富的使用案例。官网地址
JavaScript
6、clipboard.js:实现了点击文本内容的 JavaScript 插件,优点:最新、极小、无任依赖、使用简单方便。在线文档
7、nodeclub:Nodeclub 是使用 Node.js 和 MongoDB 开发的社区系统,社区地址
Objective-C
8、PYPhotoBrowser:高仿 QQ、微信效果的图片浏览器(支持原图和缩略图、多种手势、CocoaPods)
Python
9、cli:非常好用的命令行 HTTP 客户端,cURL 的替代者,返回的结果支持高亮,提高了可读性。用于调试接口、查看服务器返回的 HTTP 协议的信息。在线文档,下面的是 cURL 和 httpie 的返回结果对比图:
10、fake-useragent:伪装浏览器身份,常用于爬虫。这个项目的代码很少,可以阅读一下,看看 ua.random 是如何返回随机的浏览器身份的😁,示例代码:
from fake_useragent import UserAgent
ua = UserAgent()
ua.ie
# Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US);
ua.msie
# Mozilla/5.0 (compatible; MSIE 10.0; Macintosh; Intel Mac OS X 10_7_3; Trident/6.0)'
ua['Internet Explorer']
# Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; GTB7.4; InfoPath.2; SV1; .NET CLR 3.3.69573; WOW64; en-US)
ua.opera
# Opera/9.80 (X11; Linux i686; U; ru) Presto/2.8.131 Version/11.11
ua.chrome
# Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2'
ua.google
# Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/537.13 (KHTML, like Gecko) Chrome/24.0.1290.1 Safari/537.13
ua['google chrome']
# Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11
ua.firefox
# Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1
ua.ff
# Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/20100101 Firefox/15.0.1
ua.safari
# Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25
# and the best one, random via real world browser usage statistic
ua.random11、langid.py:用于识别输入文本数据所属的语种,目前支持 97 种语言识别。示例代码:
import langid
text1 = "I am a coder and love data mining"
text2 = "请注明作者和出处并保留声明和联系方式"
print langid.classify(text1)
print langid.classify(text2)
# ('en', 0.9999957874458753)
# ('zh', 1.0)Other
12、coding-interview-university:一套完整的学习手册帮助自己准备 Google 的面试,中文翻译版
13、How-to-Make-a-Computer-Operating-System:(英文)如何做一个操作系统在线阅读
14、learning-react:yiminghe 的 react 中文教程,包含入门和进阶
15、static:这个项目是一个仓库,它尽可能全面收录优秀的开源库,并免费为之提供 CDN 加速服务,使之有更好的访问速度和稳定的环境。同时,它也提供开源库源接入的入口,让所有人都可以提交开源库,包括 JavaScript、CSS、image 和 swf 等静态文件。访问 Staticfile CDN
16、WebFundamentals:(英文)Google 的 Web 开发者最佳练习教程
Book
17、build-web-application-with-golang:《Go Web 编程》中文
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
File: content/en/HelloGitHub08.md
HelloGitHub Vol.08
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
C#
1、Newtonsoft.Json:Newtonsoft.Json 是一款 .NET 平台中开源的 JSON 序列化和反序列化类库,示例代码:
public class Account
{
public string Email { get; set; }
public bool Active { get; set; }
public DateTime CreatedDate { get; set; }
public IList<string> Roles { get; set; }
}
Account account = new Account
{
Email = "[email protected]",
Active = true,
CreatedDate = new DateTime(2013, 1, 20, 0, 0, 0, ateTimeKind.Utc),
Roles = new List<string>
{
"User",
"Admin"
}
};
string json = JsonConvert.SerializeObject(account, Formatting.Indented);
// {
// "Email": "[email protected]",
// "Active": true,
// "CreatedDate": "2013-01-20T00:00:00Z",
// "Roles": [
// "User",
// "Admin"
// ]
// }
Console.WriteLine(json);C++
2、libco:腾讯的开源项目——libco 是微信后台大规模使用的 C/C++ 协程库,2013 年至今稳定运行在微信后台的数万台机器上。
- 无需侵入业务逻辑,把多进程、多线程服务改造成协程服务,并发能力得到百倍提升
- 支持 CGI 框架,轻松构建 Web 服务
- 支持 gethostbyname、mysqlclient、ssl 等常用第三方库
- 可选的共享栈模式,单机轻松接入千万连接
- 完善简洁的协程编程接口
- 类 pthread 接口设计,通过 co_create、co_resume 等简单清晰接口即可完成协程的创建与恢复
- __thread 的协程私有变量、协程间通信的协程信号量 co_signal
- 语言级别的 lambda 实现,结合协程原地编写并执行后台异步任务
- 基于 epoll/kqueue 实现的小而轻的网络框架,基于时间轮盘实现的高性能定时器
Go
3、kcptun:也许是世界上最快的 UDP 传输工具,支持 macOS/Linux/Windows/FreeBSD/ARM/Raspberry Pi/OpenWrt。
Java
4、AndroidUtilCode:Android 开发人员不得不收集的代码,中文介绍
5、DanmakuFlameMaster:Bilibili 开源的 Android 开源弹幕引擎·烈焰弹幕使。特性:
- 使用多种方式(View/SurfaceView/TextureView)实现高效绘制
- 该站 XML 弹幕格式解析
- 基础弹幕精确还原绘制
- 支持 mode7 特殊弹幕
- 多核机型优化,高效的预缓存机制
- 支持多种显示效果选项实时切换
- 实时弹幕显示支持
- 换行弹幕支持/运动弹幕支持
- 支持自定义字体
- 支持多种弹幕参数设置
- 支持多种方式的弹幕屏蔽
JavaScript
6、atrament:极小的 JavaScript 画板,在线演示
7、incubator-weex:移动端,跨平台前端框架,详细的中文档
Python
8、httpstat:httpstat 美化了 curl 的结果,使得结果更加可读。同时它无依赖、兼容 Python3、一共才 300 多行。还可以显示 HTTP 请求的每个过程中消耗的时间,如下图:
9、PyMySQL:纯 Pyton 写的 MySQL 库,纯 Python 的好处就是可以运行在任何装有 Python 解释器(CPython、PyPy、IronPython)的平台上。相对于 MySQLdb 性能几乎一样,使用方法也一样,但是 PyMySQL 安装方法极其简单——pip install PyMySQL,PyMySQL 使用示例代码:
# 下面为例子需要的数据库的建表语句
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`email` varchar(255) COLLATE utf8_bin NOT NULL,
`password` varchar(255) COLLATE utf8_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin
AUTO_INCREMENT=1 ;# -*- coding: utf-8 -*-
import pymysql.cursors
# 连接数据库
connection = pymysql.connect(host='localhost',
user='user',
password='passwd',
db='db',
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor)
try:
with connection.cursor() as cursor:
# 创建一个新的纪录(record)
sql = "INSERT INTO `users` (`email`, `password`) VALUES (%s, %s)"
cursor.execute(sql, ('[email protected]', 'very-secret'))
# 连接不会自动提交,所以你想下面要调用 commit 方法,存储对数据库的改动
connection.commit()
with connection.cursor() as cursor:
sql = "SELECT `id`, `password` FROM `users` WHERE `email`=%s"
cursor.execute(sql, ('[email protected]',))
# 获取一条的纪录(record)
result = cursor.fetchone()
print(result) # 结果输出:{'password': 'very-secret', 'id': 1}
finally:
connection.close() # 操作完数据库一要记得调用 close 方法,关闭连接10、reddit:reddit.com 网站的源码,通过这个项目,可以学习 Python 在构建大型项目中的使用、项目结构、代码风格、Python 技巧的使用方法等。安装教程
Ruby
11、discourse:Ruby 语言写的论坛,百分之百开源、免费。
Other
12、How-To-Ask-Questions-The-Smart-Way:提问的智慧,提出一个好的问题是解决问题的关键
13、jstraining:阮一峰写的全栈工程师培训材料
14、macOS-Security-and-Privacy-Guide:MacOS 的安全和隐私指南,中文翻译版
15、PTVS:Visual Studio 下的 Python 开发插件
16、styleguide:百度前端研发团队的文档与源码编写风格
17、the-swift-programming-language-in-chinese:中文版 Apple 官方 Swift 教程《The Swift Programming Language》
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
File: content/en/HelloGitHub09.md
HelloGitHub Vol.09
Passion is the best teacher. HelloGitHub inspires your interest in open-source!
Table of Contents
Click the 「Table of Contents」 icon at the top-right corner to open the navigation and enjoy a better reading experience.
Content
The content of this issue is as follows|Updated on the 28th of each month
C++
1、json:C++ 的 JSON 库
Go
2、vim-go:Go 的 vim 配置
Java
3、android:锤子开源的 One Step 项目,一步(one step)是通过拖拽完成将信息发送至应用或联系人的动作,节省了在不同应用之间切换的诸多步骤,第一次打通了手持设备中应用间的边界,One Step
4、android-open-project:Android 开源项目分类汇总
5、MSEC:腾讯开源的毫秒服务引擎(Mass Service Engine in Cluster)。它是一个开源框架,适用于在廉价机器组成的集群上开发和运营分布式后台服务。毫秒服务引擎集 RPC、名字发现服务、负载均衡、业务监控、灰度发布、容量管理、日志管理、key-value 存储于一体,官网介绍
JavaScript
6、N-blog:面向新手的 Node.js 教程,该教程讲述了 Node.js 基本知识点,同时结合搭建一个多人博客的实战,从零基础到实际开发,由浅到深帮助新手入门 Node.js 这门语言
7、pomelo:Pomelo 网易开源的一个 Node.js 游戏服务器框架,Demo
8、vue-hackernews-2.0:这是一个 Vue2.0 示例,克隆 Hacker News 网站(我感觉比原站好看多了😅)
PHP
9、VulApps:用于快速搭建各种漏洞环境,可用来学习、理解常见的漏洞,增强自己在开发过程的安全意识
Python
10、flask-limiter:一个 Flask 的扩展库,它可以根据访问者的 IP 限制其访问频率、次数等。示例代码如下:
from flask import Flask
from flask_limiter import Limiter
from flask_limiter.util import get_remote_address
app = Flask(__name__)
limiter = Limiter(
app,
key_func=get_remote_address,
global_limits=["2 per minute", "1 per second"],
)
@app.route("/slow")
@limiter.limit("1 per day")
def slow():
return "24"
@app.route("/fast")
def fast():
return "42"
@app.route("/ping")
@limiter.exempt
def ping():
return 'PONG'
app.run()11、glances:一个可以让你一目了然你的系统情况(类 (h)top)的工具,它界面友好,安装方便:pip install glances
12、ngrok:一个十分方便、好用的内网穿透工具,它可以把本地某个端口的服务,通过一个安全隧道,映射到公网的一个地址。同时它提供了一个 Web 页面,展示了每个请求、响应的所有信息,便于调试本地的程序。基本的使用方法如下:
ngrok 协议 本地服务监听的端口
ngrok http 8000
创建成功会返回公网地址,然后通过该地址就可以访问到本地的服务。
本地访问 http://localhost:4040,就可以查看关于每个请求、响应的相关数据Swift
13、Kingfisher:Kingfisher 是一个异步下载和缓存图片的库,你可以把它看做 SDWebImage 的纯 Swift 实现和替代。它可以帮助简单地实现像是用户头像或者 table view 里面的图片的下载和缓存这样的工作,以提高 app 速度和帮助开发者节省时间,作者的中文博客
AI
14、machine-learning-for-software-engineers:自上而下的学习路线,软件工程师的机器学习,中文版
Other
15、best-chinese-front-end-blogs:该项目是收集优质的中文前端博客
16、freecodecamp.cn:freecodecamp 是一个自由的开源编程社区,freecodecamp 中文社区
17、golang-open-source-projects:中文版 awesome-go
18、Learn-Algorithms:算法数据结构学习,C 语言实现
Book
19、the-way-to-go_ZH_CN:《The Way to Go》中文译本,中文正式名《Go 入门指南》
Sponsor
| UCloud
超值的GPU云服务 | CDN
开启全网加速 | OpenIM
开源IM力争No.1 | 七牛云
百万 Token 免费体验 | OfoxAI
100+ 模型官方直连不掉线 |
| --- | --- | --- | --- | --- |
Disclaimer
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.