兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣!
分享 GitHub 上有趣、入门级的开源项目。
这是一个面向编程新手、热爱编程、对开源社区感兴趣 人群的月刊,月刊的内容包括:各种编程语言的项目、让生活变得更美好的工具、书籍、学习笔记、教程等,这些开源项目大多都是非常容易上手,而且非常 Cool。主要是希望大家能动手用起来,加入到开源社区中。
- 会编程的可以贡献代码
- 不会编程的可以反馈使用这些工具中的 Bug
- 帮着宣传你觉得优秀的项目
- Star 项目⭐️
在浏览、参与这些项目的过程中,你将学习到更多编程知识、提高编程技巧、找到编程的乐趣。
🎉 最后 HelloGitHub 这个项目就诞生了 🎉
Tips:如果文中的图刷不出来,可以向我们反馈。也可以访问 官网 获取更好的阅读体验。
以下为本期内容|每个月 28 号发布最新一期
1、snake:贪吃蛇游戏 AI 版,通过算法实现让小蛇通过吃豆,最后蛇的身体填满整个地图算结束。该项目详细描述实现思想以及相关算法的讨论
2、mdui:MDUI 是一套用于开发 Material Design 网页的响应式前端框架。没有任何依赖,支持主题切换,轻量级,低学习成本,文档
3、aliyungo:非官方的 Aliyun Go语言 SDK 支持API:ECS, OSS, DNS, SLB, RDS, RAM, MNS, STS, SLS, MQ, Push, OpenSearch, DM, Container Service
4、conference:Go 语言实际项目应用的技术分享
5、FunGameRefresh:好玩的下拉刷新控件
6、ProgressManager:一行代码即可监听 App 中所有网络链接的上传以及下载进度,包括 Glide 的图片加载进度。实现原理类似 EventBus 你可在 App 中的任何地方,将多个监听器以 URL 地址作为标识符,注册到本框架。当此 URL 地址存在下载或者上传的动作时,框架会主动调用所有使用此 URL 地址注册过的监听器,达到多个模块的同步更新
7、veneno:一个基于 Node.js 编写的 web 安全漏洞自动化扫描框架
8、xdomain:纯 JavaScript 实现 CROS 的库,在线示例
9、font-spider:字蛛是一个智能 WebFont 压缩工具,它能自动分析出页面使用的 WebFont 并进行按需压缩
11、spectacle:OS X 系统下的窗口管理工具,通过快捷键方便、快捷的调整窗口大小和位置
12、FLEX:用于 iOS 开发的一组应用内调试工具,功能强大且多,多到不一一列举了
13、musicbox:基于 Python 编写的网易云音乐命令行版本,使用起来简单优雅,能够快速安装及使用
14、django-blog-tutorial:基于最新版 Django 1.10 和 Python 3.5,通过 26 篇教程一步步带你使用 Django 从零开发一个个人博客系统,在实践的同时掌握 Django 的开发技巧,完成效果展示
15、aredis:一款基于 Python3 asyncio 的异步 redis 客户端,支持对于单实例,连接池, 哨兵以及集群。作者希望可以找到志同道合的小伙伴集思广益,一起维护、优化。示例代码如下:
>>> import asyncio
>>> from aredis import StrictRedis
>>>
>>> async def example():
>>> client = StrictRedis(host='127.0.0.1', port=6379, db=0)
>>> await client.flushdb()
>>> await client.set('foo', 1)
>>> assert await client.exists('foo') is True
>>> await client.incr('foo', 100)
>>>
>>> assert int(await client.get('foo')) == 101
>>> await client.expire('foo', 1)
>>> await asyncio.sleep(0.1)
>>> await client.ttl('foo')
>>> await asyncio.sleep(1)
>>> assert not await client.exists('foo')
>>>
>>> loop = asyncio.get_event_loop()
>>> loop.run_until_complete(example())
16、freezegun:时间漫步模块,模拟到某一个时间,使用简单方式多样,实现了装饰器、上下文等调用方式。示例代码如下:
from freezegun import freeze_time
import datetime
import unittest
@freeze_time("2012-01-14")
def test():
assert datetime.datetime.now() == datetime.datetime(2012, 1, 14)
17、mastodon:基于 Ruby 语言的社交网站服务器端所有的源代码,通过这个项目,你可以自己部署一个属于自己的社交网站
18、vim-galore-zh_cn:Vim 从入门到精通
19、Spacemacs-rocks:用 21 天学习 Emacs 以及 Spacemacs(Emacs 的配置文件)的使用
20、SpaceVim:一个社区驱动的模块化 vim/neovim 配置集合,其中包含了多种功能模块,并且针对 neovim 做了功能优化。spacevim 有多种功能模块可供选择,支持多种语言。用户只需要选择需要的模块,就可以配置出一个适合自己的开发环境
21、English-level-up-tips-for-Chinese:如何提高英语技能
22、ch:类似 virtualenv,可以在 Linux 下建立虛拟的 home 目录並切换,以管理不同工作或项目的文件
23、redis:《Redis Command Reference》全文的中文翻译版,在线阅读
24、es6tutorial:阮一峰老师的开源精品,ECMAScript 6 入门书籍,在线阅读
看完了,还不够?<科技爱好者周刊>。还不过瘾,那就看看 <往期内容>吧。
点击分享发现的有趣项目
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。