《HelloGitHub》第 27 期

公告

网站新增了简单的搜索功能,能够经过项目名称或地址搜索、查看项目。欢迎star和推荐项目,咱们一只在路上,但愿志同道合者加入进来。前端

现招募专栏负责人:vue

  • C#
  • Java

《HelloGitHub》第 27 期

兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣!python

简介

分享 GitHub 上有趣、入门级的开源项目。mysql

这是一个面向编程新手热爱编程对开源社区感兴趣 人群的月刊,月刊的内容包括:各类编程语言的项目让生活变得更美好的工具书籍、学习笔记、教程等,这些开源项目大多都是很是容易上手,并且很是 Cool。主要是但愿你们能动手用起来,加入到开源社区中。c++

  • 会编程的能够贡献代码
  • 不会编程的能够反馈使用这些工具中的 Bug
  • 帮着宣传你以为优秀的项目
  • Star 项目⭐️

在浏览、参与这些项目的过程当中,你将学习到更多编程知识提升编程技巧找到编程的乐趣git

🎉 最后 HelloGitHub 这个项目就诞生了 🎉程序员


如下为本期内容|每月 28 号发布最新一期|点击查看往期内容github

C# 项目

一、Rosin:一个 Fiddler 插件,用于协助开发者进行移动端页面开发、调试web

二、SiteServer-CMS:开源、免费、企业级内容管理平台。基于该工具能够快速、方便地搭建搭建一个性能优异、颇具规模、易于维护的网站平台算法

C++ 项目

三、MyTinySTL:用 C++11 实现的小型 STL(容器库+算法库)。代码结构清晰规范、包含中文文档与注释,而且自带一个简单的测试框架,适合新手学习与参考。示例代码以下:

// 在尾部插入元素
template <class T>
void vector<T>::push_back(const value_type& value)
{
  if (end_ != cap_)
  {
    data_allocator::construct(mystl::address_of(*end_), value);
    ++end_;
  }
  else
  {
    reallocate_insert(end_, value);
  }
}

Go 项目

四、appify:该项目可以方便的把 Golang 项目包装成 MacOS 能够直接运行的软件。能够用来把本身写的小工具包装成一个其余人能够直接下载并双击使用的软件。提供自定义 logo、名字,分分钟发布本身的 Golang 软件。使用步骤以下:

# 1.安装命令
$ go get github.com/machinebox/appify

# 2.封装命令
$ appify -name "My Go Application" -icon ./icon.png /path/to/bin

五、usql:通用SQL命令行客户端。支持如下全部数据库和协议:

数据库 (scheme/driver) 协议别名 [real driver]
Microsoft SQL Server (mssql) ms, sqlserver
MySQL (mysql) my, mariadb, maria, percona, aurora
Oracle (ora) or, oracle, oci8, oci
PostgreSQL (postgres) pg, postgresql, pgsql
SQLite3 (sqlite3) sq, sqlite, file
安装方法
1. 根据你的系统下载最新的 binary
2. 解压缩出 `usql` 或者 `usql.exe`
3. 把binary放到你的 `$PATH` (Linux/macOS) 或 `%PATH%` (Windows)路径下
4. 而后就能够用`usql`连接到你喜欢的SQL数据库啦~

Java 项目

六、RetrofitUrlManager:以简洁的 API 让 Retrofit 同时支持多个 BaseUrl,动态改变 BaseUrl

JavaScript 项目

七、v-region:使用 Vue 建立的中国省市区选择组件,组件复用程度高、可直接引入项目中使用。使用场景适用于须要用户选择地址,采用该组件能够提升交互程度。文档,示例代码:

<v-region :city="false" :area="false" class="form-control"></v-region> // 只显示省份
<v-region :area="false" class="form-control"></v-region> // 显示省市
<v-region class="form-control"></v-region> // 显示省市区

八、whistle:基于 Node.js 实现的跨平台 web 调试代理工具,相似于 Windows 平台上的 Fiddler。主要用于查看、修改HTTP、HTTPS、Websocket的请求、响应,也能够做为 HTTP 代理服务器使用。不一样于 Fiddler 经过断点修改请求响应的方式,whistle 采用的是相似配置系统 hosts 的方式,一切操做均可以经过配置实现。经过该工具,能够现实复杂的前端环境、生产、开发、bugFix 一键切换。

九、simpread:让你瞬间进入沉浸式阅读的扩展,还原阅读的本质,提高你的阅读体验。使用它能够为你剔除页面上无关的干扰信息,让用户专一于阅读主要的内容。经过这个项目,还能够学习如何开发 Chrome 扩展

十、incubator-echarts:使用 JavaScript 实现的开源、流行、强大的可视化库。能够流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器。提供直观、交互丰富、可实现高度个性定制化的数据可视化图表,也可将其封装为任何 MVVM 框架的组件方便适用。官网

Objective-C 项目

十一、KafkaRefresh:内置多种动画、可自定义和灵活的 iOS 下拉刷新框架。中文文档

Python 项目

十二、tenacity:使用该库能够优雅地实现各类需求的重试。示例代码以下:

from tenacity import retry, stop_after_attempt

# 经过装饰器,实现遇到异常重试3次
@retry(stop=stop_after_attempt(3)) 
def get_data(url):
    response = requests.get(url)
    response_json = response.json()

1三、unimatrix:模拟“黑客帝国”影片中的终端动画脚本

1四、pudb:基于控制台的全屏 Python 可视化调试器。比 pdb 好用太多了,特性:

  • 源码语法高亮,栈、断点、变量可见而且一直动态更新。变量展现还有不少能够定制化的功能。
  • 基于键盘,简单高效。支持 VI 的鼠标移动。还支持 PDB 的某些命令
  • 支持查找源代码,可使用 m 代用 module browser 查看载入的模块
  • 断点设置。鼠标移到某行代码,按 b,而后能够在断点窗口编辑断点

Ruby 项目

1五、hacker101:(英文)一个免费的 Web安全课程。不管你是一个程序员、对 bug 悬赏感兴趣,或是一个经验丰富的安全专业人员,在 HACKE101 课程中均可以学到东西。包涵大量示例代码和在线 Demo,示例代码为 Ruby。

Swift 项目

1六、IBAnimatable:一个帮助咱们在 Interface Builder 和 Swift Playground 里面设计 UI、交互、导航模式,、换场和动画的开源库。下图的整个 App 都是经过 IBAnimatable 在 Interface Builder 设计完成,没有任何一行代码。

1七、TuringCalendar:图灵教育推出的限量款编程日历 2018,由于简约大气的设计和每周一个编程语言的介绍,在程序员中广受欢迎。如今日历 PDF 的源文件已经该源,因而就有了这个项目。一个 macOS 桌面上的日历 widget,效果图以下:

其它

1八、project-guidelines:JavaScript 工程项目的一系列最佳实践策略,中文版。其它编程语言的项目也有能够借鉴的地方

1九、Android_Data:这个集合主要可以帮助初学者在初学 Android 开发的时候,可以快速、方便地找到适合本身的学习资料

20、Front-End-Checklist:一份在网站发布到生产环境以前,前端部分须要测试、检查的详尽清单。中文版

2一、build-your-own-x:(英文)费曼:“我不能创造的東西,我就不了解。”该项目收集了不一样编程语言造轮子的教程

机器学习

2二、simplified-deeplearning:《DeepLearningBook》读书笔记

2三、elasticsearch-spark-recommender:使用 Apache Spark 的机器学习库 (MLlib) 来训练一个协同过滤推荐系统模型 和 Elasticsearch 构建一个推荐系统教程,中文版阅读


换种方式阅读

声明

若是你发现了好玩、有意义的开源项目 点击这里 分享你以为有意思的项目。

欢迎转载,请注明出处和做者,同时保留声明。

相关文章
相关标签/搜索