下拉刷新
目录

《HelloGitHub》第 41

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

C# 项目
Star 1.9k
Fork 405

Redis.io 官方推荐的 C# 语言 redis 客户端库,支持 redis 2.8-5.0 版本的所有命令,且包含哨兵、集群等功能。该项目从 2016 年开始持续迭代更新,实现了低门槛、高性能和分区等高级玩法。该项目作者:2881099,在 GitHub 上开源了很多有趣、实用的 C# 项目。欢迎大家关注他,同时参与到他的项目中,为开源社区贡献自己的一份力量。示例代码:

var csredis = new CSRedis.CSRedisClient("127.0.0.1:6379,password=123"); RedisHelper.Initialization(csredis); RedisHelper.Set("test1", "123123", 60); RedisHelper.Get("test1"); //...函数名与 redis-cli 的命令相同 //普通订阅 RedisHelper.Subscribe( ("chan1", msg => Console.WriteLine(msg.Body)), ("chan2", msg => Console.WriteLine(msg.Body))); //管道操作 RedisHelper.StartPipe().Set("a", "1").Get("a").EndPipe();
C++ 项目
Star 1.1w
Fork 1.1k

Wow Awesome!你想将 modern cpp 运用自如吗?那就来看 Awesome-modern-cpp 吧!这里列出了一些有关现代 C++ 的最佳实践、书籍、会议、谈话、播客、博客、网站、各种各样的库以及一些工具,让你不禁 Wow Awesome,这就是你独享的 moment

3
fmt
Star 1.8w
Fork 2.2k

这是一个开源的 C++ 格式库。它可以作为 (s)printf 和 iostreams 的安全和快速替代品,也是 C++ 20 中 std::format 的一个实现。它的格式化字符串语法类似于 Python 中的 str.format,支持用户自己定义的类型,还比 printf 和 iostreams 的常见标准库实现更快!而且 fmt 还非常安全,格式字符串中的错误可以在编译时报告,还可以防止缓冲区溢出错误。示例代码:

fmt::print("Hello, {}!", "world"); // 类 Python 的语法风格 fmt::printf("Hello, %s!", "world");
Go 项目
Star 9.7k
Fork 2k

谷歌出品的 GitHub API Go 语言版本。如果你需要做一个 GiHhub 相关的产品后端,这个可以省去很多功夫,而且还可以学习谷歌工程师写的 Go 项目、设计接口的思路。示例代码:

import "github.com/google/go-github/v27/github" // 启用的 go module (GO111MODULE=on 或者不在 GOPATH 里) import "github.com/google/go-github/github" // 没启用 go module 时 client := github.NewClient(nil) // 获取用户 "willnorris" 所在的所有组织 orgs, _, err := client.Organizations.List(context.Background(), "willnorris", nil)
Star 8.8k
Fork 1.5k

一个后端采用 Go 语言的电子表格 Web 应用程序,支持 Python 编程语言处理数据,结果运行即可见。它旨在提供一个集成的工作流程,用于加载、清理、操作和可视化数据。可在线使用,对于用 Python 等处理数据的数据工程师而言,就是一款神器。之前就很好奇石墨文档怎么做的,这下可以学习下了,电子表单是一个比较复杂的问题,该项目有很多可以学习的地方。安装:

git clone https://github.com/ricklamers/gridstudio # clone 项目 cd gridstudio && ./run.sh # 直接运行 # 然后访问 http://127.0.0.1:8080 用户名:admin 密码:admin
gridstudio
Star 1.5k
Fork 148

一个用 Go 语言模拟简单计算机 CPU 的项目。只有 Go 语言的函数,没有硬件的模块,从与非门直到一台能做加减运算和显示的迷你虚拟计算机。这些是计算机最底层、基础的东西,虽然是使用 Go 语言模拟,而不是用硬件打造而。但是计算机的基本结构,运行的基本原理都显示的非常清楚。对于新手,既能了解 CPU 原理,也会发现编程语言除了能写软件之外的其他有趣用处。安装命令:

make # 构建项目 make test # 测试 ./bin/simulator -bin _programs/brush.bin # 运行虚拟机
simple-computer
Java 项目
Star 2k
Fork 259

一个侧滑处理框架,而不是具体某种侧滑效果的实现。其内部封装十几种侧滑效果,包括侧滑返回、侧滑删除、百叶窗、开门等效果,总有那么几款能让你眼前一亮。示例代码:

//为控件添加仿MIUI的弹性拉伸效果: // 当纵向不能滚动(或滚动到顶/底)时,若继续拖动,则 UI 呈现弹性拉伸效果,释放后平滑恢复 SmartSwipe.wrap(view) .addConsumer(new StretchConsumer()) .enableVertical(); SmartSwipe.wrap(view) .addConsumer(new StretchConsumer()) .enableVertical() //仿 MIUI 拉伸效果的方向为:上下 2 个方向 .addConsumer(new SpaceConsumer()) .enableHorizontal() //仿 iOS 弹性留白效果的方向为:左右 2 个方向 ; SmartSwipeBack.activityBezierBack(application, null); //仿小米 MIUI 系统的贝塞尔曲线返回效果 SmartSwipeBack.activityStayBack(application, null); //仿手机 QQ 的手势滑动返回 SmartSwipeBack.activitySlidingBack(application, null); //仿微信带联动效果的透明侧滑返回 SmartSwipeBack.activityDoorBack(application, null); //侧滑开门样式关闭 activity SmartSwipeBack.activityShuttersBack(application, null); //侧滑百叶窗样式关闭 activity //xxxMode 第二个参数为 false,表示工作方向为纵向:下拉刷新&上拉加载更多 //如果第二个参数设置为 true,则表示工作方向为横向:右拉刷新&左拉加载更多 SmartSwipeRefresh.drawerMode(view, false).setDataLoader(loader); SmartSwipeRefresh.behindMode(view, false).setDataLoader(loader); SmartSwipeRefresh.scaleMode(view, false).setDataLoader(loader); SmartSwipeRefresh.translateMode(view, false).setDataLoader(loader);
SmartSwipe
8
SoloPi
Star 5.4k
Fork 1.1k

一个不需要连接电脑、非侵入式的 Android 自动化工具。公测版拥有录制回放、性能测试、一机多控三项主要功能,能为测试开发人员节省宝贵时间。安卓版本多、终端型号多,一个成熟安卓应用的上线需要进行大量测试,而很多测试都是属于重复操作,通过此工具可以极大简化测试人员的工作量

SoloPi
9
vhr
Star 2.6w
Fork 1w

一个前后端分离的人力资源管理系统。该项目采用 SpringBoot + Vue 架构,这两个都是近些年很流行的框架。该项目涉及的场景很多,可作为全栈工程师的入门实践

vhr
10
XUI
Star 4.5k
Fork 805

一个简洁而优雅的 Android 原生 UI 框架。让原生 Android 开发人员也能像 web 开发者一样,拥有方便的 UI 库。该项目适用于有一定 Android 开发经验的开发者

XUI
JavaScript 项目
Star 7.5k
Fork 200

手绘风格的 JS 图表库。手绘风格的设计给人一种很可爱的感觉,看了这些图表你会发现数据也可以以萌萌哒的形式展示

chart.xkcd
Star 3.5w
Fork 7.4k

通过调用 fullPage 可轻易创建全屏滚动网站(也称为单页网站)。 fullPage 可创建全屏滚动网站,同时也可在网站中添加横向滚动条。适合快速搭建全屏滚动或者拥有视觉差的站点,使得网站看上去更加高端、大气、上档次,示例代码:

<div id="fullpage"> <div class="section">Some section</div> <div class="section">Some section</div> <div class="section">Some section</div> <div class="section">Some section</div> </div>
fullPage.js
13
PicGo
Star 2.2w
Fork 2.2k

基于 electron-vue 实现的桌面图床工具。该工具可以帮助你高效、非常方便地上传图片到网络图床,包括了微博图床、七牛图床、腾讯云 COS、又拍云、GitHub、SM.MS、阿里云OSS、Imgur 等。只要使用快捷键或拖动就可以上传,而且上传成功的图片链接会自动复制到你的剪贴板里,支持 macOS、Windows、Linux 三大系统

PicGo
14
Valine
Star 2.1k
Fork 253

一款快速、简洁且高效的无后端的 JS 评论插件。该库使用 LeanCloud API 存储数据,且设计美观、体积小、支持 Markdown 和 Emoji。对于使用 Hexo、Hugo 等静态网页博客主来说,它简直就是福音。通过简单的几步就可以快速的给自己的博客增加评论功能,你还不快来试试

Valine
Star 2.8w
Fork 2.7k

基于 JS 的流媒体种子客户端。不需要等待种子中的内容下载完毕,就可以马上播放种子中的内容,且有 Windows、Mac 和 Linux 操作系统的桌面版客户端。还在为等待下载而苦恼吗?有了它即可复制种子链接观看对应的视频内容

webtorrent
Python 项目
16
bullet
Star 3.4k
Fork 110

一个支持终端输入和菜单选择的 Python 库。可以让使用者在终端上用方向键移动、单选、复选、密码输入等,而且支持定制化格式和颜色。看下面的效果图你就知道它是干什么

bullet
17
DaPy
Star 582
Fork 49

一个易用的数据分析 Python 库。通过提供合理的数据结构和丰富的机器学习模型,它能帮你快速地实现数据分析思路。简单来说,DaPy 能帮助你完成数据挖掘任务中的每一步,导入导出数据、预处理数据、特征工程、模型训练和模型评估等

DaPy
18
PyUnit
Star 716
Fork 175

帮助学习 Python 的代码集合包。包含 20 多个简单易用的常用方法和数学函数,大多数方法在 100 行左右,而且每一个类的使用都有对应的测试用例。非常方便初学者学习,也可以帮助有经验的开发者快速实现一些功能。示例代码:

# 这是一个阳历转化农历的程序 from jtyoui.plunar import SC if __name__ == '__main__': lun = SC(year=2018, month=1, day=2) #阳历转农历 print(lun.y) # 农历的年,中文字符 二零一九 print(lun.year) # 农历的年,阿拉伯数字 2019 ... print(lun) # 二零一九年 七月 十四 星期四 无
Ruby 项目
Star 3.8k
Fork 278

一款可配置的 git hook 管理工具。git hook 是 git 的强大功能,当触发某一个 git 的事件,例如:add、commit、push 等操作时,会触发执行对应事件的附加操作(hook)。可以用来检测代码质量、commit 描述风格、控制代码质量等。overcommit 就是能让你不写一行代码(配置不算代码),来自定义 hook 要执行的操作。它使用简单、文档详尽、例子众多、社区活跃,值得一试

overcommit
Star 5.2k
Fork 958

一个 Ruby 的 HTTP 客户端库。已经有累计 10 万人在使用,该库使用方便、API 设计优雅、支持常用的 HTTP 方法、文件下载、设置代理等。每个方法基本都有示例代码:

require 'rest_client' RestClient.get 'http://example.com/resource' RestClient.get 'http://example.com/resource', {:params => {:id => 50, 'foo' => 'bar'}} RestClient.get 'https://user:password@example.com/private/resource', {:accept => :json} RestClient.post 'http://example.com/resource', :param1 => 'one', :nested => { :param2 => 'two' } RestClient.post "http://example.com/resource", { 'x' => 1 }.to_json, :content_type => :json, :accept => :json RestClient.delete 'http://example.com/resource' response = RestClient.get 'http://example.com/resource' response.code 200 response.cookies {"Foo"=>"BAR", "QUUX"=>"QUUUUX"} response.headers {:content_type=>"text/html; charset=utf-8", :cache_control=>"private" ... response.to_str ➔ \n<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n \"http://www.w3.org/TR/html4/strict.dtd\">\n\n<html .... RestClient.post( url, { :transfer => { :path => '/foo/bar', :owner => 'that_guy', :group => 'those_guys' }, :upload => { :file => File.new(path, 'rb') } })
Swift 项目
Star 17
Fork 3

可以在 macOS 通知中心上快速切换“亮/暗”主题的小工具

AppearancesSwitcher
其它
Star 1w
Fork 2.2k

ADB 用法集合(Android Debug Bridge)

Star 1.5w
Fork 3.2k

Git 常用命令集合

开源书籍
24
OnJava8
Star 1.6w
Fork 5.5k

《On Java 8》中文版又名《Java 编程思想》

机器学习
Star 1.2k
Fork 148

该项目是收录多模态相关研究的一个精选列表,正在持续更新中。现实世界中的信息通常以不同的模态出现。例如,图像通常与标签和文本解释联系在一起;文本包含图像以便更清楚地表达文章的主要思想。不同的模态由迥异的统计特性刻画。例如,图像通常表示为特征提取器的像素强度或输出,而文本则表示为离散的词向量。由于不同信息资源的统计特性不同,发现不同模态之间的关系是非常重要的

Star 1.5k
Fork 285

今天推荐的这个项目是 Nonlocal Net 的第三方实现,实现框架为 PyTorch。项目简明易懂,但是还没有在大型公开数据集上测试过性能。但是附带了一个 MNIST 的样例,可以供读者参考。Nonlocal Net 是大神 Kaiming He 研究组在图像领域引入 Attention 机制的一篇论文。Nonlocal Net 的提出,引领了一波在图像领域运用注意力机制的浪潮,最近两年该方向论文层出不穷。Facebook 也开源了一个 Nonlocal Net 在视频分类中的项目,但是框架基于他们维护的 caffe2,读者可以根据自身实际情况进行浏览阅读

Star 1.8k
Fork 476

这是 NumPy 中文翻译文档。适合任何想了解学习 NumPy 的人,还可以当作手册查阅。如果你是新手朋友,推荐阅读基础文章中的:理解 Numpy、NumPy 简单入门教程、创建 Numpy 数组的不同方式,参考文章里会不定期更新国内外优秀的 Numpy 相关的内容。如果你想徒手实现神经网络可以参看 NumPy 与 神经网络、 NumPy 实现 DNC、RNN 和 LSTM 神经网络算法

28
rasa
Star 1.7w
Fork 4.4k

一个专门为了多轮人机对话而生的框架。主要包含 Rasa Core、Rasa NLU 两大模块,提供了对话场景、意图理解、实体抽取等功能。用户只需按照平台的语料格式构建自己的语料,便可以方便的进行意图理解和实体抽取的训练。目前使用 Rasa 平台的用户也逐渐多了起来,除了官方文档网上也容易的找到相关的项目,便于学习和上手

rasa
目录
  • C# 项目
  • C++ 项目
  • Go 项目
  • Java 项目
  • JavaScript 项目
  • Python 项目
  • Ruby 项目
  • Swift 项目
  • 其它
  • 开源书籍
  • 机器学习