《HelloGitHub》第 48 期

原创
2020/03/29 08:15
阅读数 60

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

简介

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

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

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

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

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


以下为本期内容|每个月 28 号发布最新一期

C 项目

1、DungeonRush:元气贪吃蛇游戏。作者受到元气骑士的启发,基于贪吃蛇进行一些玩法上的创新。该项目适用于 C 语言初学者、第一次尝试使用跨平台图形库的同学,参考本项目就可以写出一个可玩性高的游戏,收获满满成就感

长按识别二维码,直达项目


2、libhv:一个跨平台、简单易用的非阻塞 IO 事件循环库。用它可以快速的编写 HTTP 客户端/服务端,可提供高性能的 httpd 服务。项目模块划分清晰,代码可读性高,快去看下源代码吧。示例代码:


    
    
    
#include "HttpServer.h"
int http_api_echo(HttpRequest* req, HttpResponse* res) { res->body = req->body; return 0;}
int main() { HttpService service; service.base_url = "/v1/api"; service.AddApi("/echo", HTTP_POST, http_api_echo);
http_server_t server; server.port = 8080; server.service = &service; http_server_run(&server); return 0;}

长按识别二维码,直达项目

3、myscan:开源的多线程 socket 扫描 IP 端口的程序。目前仅支持 Windows 系统,代码简单可作为初学者学习项目

命令:myscan -p Port1[,Port2,Port3...] [-t Thread](default 10 ",Port2,Port3...] [-t Thread") [-d] (DEBUG) StartIp EndIp例子:myscan -p 80 192.168.1.1 192.168.1.254myscan -p 21,22,23,80,443,8080 -t 256 192.168.1.1 192.168.1.254

长按识别二维码,直达项目

C++ 项目

4、contour:一个使用 C++ 17 开发的终端模拟器。可在 Windows、Linux 和 MacOS 三大平台使用,支持字体连字 Font Ligatures(例如 Fira Code 字体)、GPU 加速渲染、背景模糊(Win10、KDE)、256 色、True Color 和配色主题

长按识别二维码,直达项目

5、milvus:一款开源的、针对海量特征向量的相似性搜索引擎。相比 Faiss 和 SPTAG 这样的算子库,Milvus 提供完整的向量数据更新,索引与查询框架。Milvus 利用 GPU 进行索引加速与查询加速,能大幅提高单机性能。部署使用简单,降低了 AI 应用落地的难度

长按识别二维码,直达项目

CSS 项目

6、cssgridgenerator:在线通过点击动态生成基本的 CSS Grid 代码。

长按识别二维码,直达项目

Go 项目

7、gops:展示当前系统运行了哪些 Go 程序的工具,同时支持深入分析的参数

# 展示当前运行的所有 Go 程序$ gops983   980    uplink-soecks  go1.9   /usr/local/bin/uplink-soecks52697 52695  gops           go1.10  /Users/jbd/bin/gops4132  4130   foops        * go1.9   /Users/jbd/bin/foops51130 51128  gocode         go1.9.2 /Users/jbd/bin/gocode
# 某一个 Go 程序的详细信息$ gops <pid>parent PID: 5985threads: 27memory usage: 0.199%cpu usage: 0.139%username: jbdcmd+args: /Applications/Splice.app/Contents/Resources/Splice Helper.app/Contents/MacOS/Splice Helper -pid 5985local/remote: 127.0.0.1:56765 <-> :0 (LISTEN)local/remote: 127.0.0.1:56765 <-> 127.0.0.1:50955 (ESTABLISHED)local/remote: 100.76.175.164:52353 <-> 54.241.191.232:443 (ESTABLISHED)

长按识别二维码,直达项目

8、awesome-golang-leetcode:Go 语言刷 LeetCode。

长按识别二维码,直达项目

9、wtf:瞥一眼你的“私人管家”,终端个人信息面板。安装简单,还可通过配置文件设置你想看到的信息。设置可能需要花一些时间,但最终效果还是很可以的

长按识别二维码,直达项目

Java 项目

10、MusicPlayer:一款开源的 Java 桌面版音乐播放器,使用 JavaFX/Java 8 技术开发的项目

长按识别二维码,直达项目

11、KafkaCenter:Kafka 集群管理维护、生产消费监控平台

长按识别二维码,直达项目

12、incubator-dolphinscheduler:分布式易扩展的可视化 DAG 工作流任务调度系统。致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用

长按识别二维码,直达项目

JavaScript 项目

13、G2:一套面向常规统计图表,以数据驱动的高交互可视化图形语法,具有高度的易用性和扩展性。使用 G2,你可以无需关注图表各种繁琐的实现细节,一条语句即可使用 Canvas 或 SVG 构建出各种各样的可交互的统计图表。G2 是整个蚂蚁金服 AntV 可视化解决方案中的一个环节,主要针对在高交互、高扩展的二维统计图表


长按识别二维码,直达项目

14、honeyed-words-generator:一个“土味情话”在线生成项目。支持生成图片、分享二维码。你们先看,我看完被撩到了我先去静静

长按识别二维码,直达项目

15、gitmoji-cli:Git 交互式客户端,方便在提交信息中增加 emoji 表情。终于知道别人的提交信息为什么会有表情了,效果如下图:

长按识别二维码,直达项目

16、panolens.js:基于 WebGL 的全景查看库。效果如下:

长按识别二维码,直达项目

Python 项目

17、iredis:Python 语言写的支持自动补全、语法高亮、命令提示等的 Redis 命令行客户端。超好用,真是相见很晚啊

长按识别二维码,直达项目

18、python-small-examples:Python 有趣、实用的代码示例集合。包含:Python 基础、小技巧、坑、文件操作、机器学习、绘图等,代码如下:

# pyecharts 绘制水球图示例from pyecharts import options as optsfrom pyecharts.charts import Liquid, Pagefrom pyecharts.globals import SymbolType
def liquid() -> Liquid: c = ( Liquid() .add("lq", [0.67, 0.30, 0.15]) .set_global_opts(title_opts=opts.TitleOpts(title="Liquid")) ) return c
liquid().render('./img/liquid.html')

长按识别二维码,直达项目

19、httpx:使用简单方便,轻松实现异步请求的 HTTP 客户端(Python 3.8+)。示例代码:

>>> import httpx# 同步>>> r = httpx.get('https://www.example.org/')>>> r<Response [200 OK]>>>> r.status_code# 异步>>> async with httpx.AsyncClient() as client:>>>     r = await client.get('https://www.example.org/')>>> r<Response [200 OK]>

长按识别二维码,直达项目

20、rssant:免费开源的 RSS 订阅项目,服务端是 Django 写的。你可以自己部署也可以直接使用在线版,远离嘈杂的推荐、广告,专注你订阅的内容

长按识别二维码,直达项目

Ruby 项目

21、homeland:开源免费、不限制商业使用的社区网站系统

长按识别二维码,直达项目

其它

22、learnGitBranching:一个 Git 命令可视化学习项目。能够生动形象的帮助开发人员理解、学习 Git 命令,通过一系列刺激的关卡挑战,逐步深入的学习 Git 的强大功能。

长按识别二维码,直达项目

23、Waking-Up:采用追问形式的后端面试问题总结。提问然后追问是面试常见模式,更加贴近真实面试

长按识别二维码,直达项目

24、fucking-algorithm:解 LeetCode 题目集合。号称“手撕 LeetCode 题目”,虽然之前推荐过不少解题集合,但是这次我还是没忍住。该项目讲究思路指南,解题思路描述清晰,真香啊

长按识别二维码,直达项目

25、browser-2020:该项目汇集了浏览器鲜为人知的一些功能

长按识别二维码,直达项目

机器学习

26、autokeras:Keras 官方出品基于 Keras 的 AutoML 系统。支持 CPU 和 GPU 训练,傻瓜式 API,3 行代码就能训练一个模型。目前支持的任务:图像分类、图像回归、文本分类、结构化数据分类等。将人从手工选择超参数中解放出来,快速开发原型,官方口号“所有人都能使用机器学习”。

# 安装命令 pip install autokerasimport autokeras as ak
clf = ak.ImageClassifier()clf.fit(x_train, y_train)results = clf.predict(x_test)

长按识别二维码,直达项目

最后

如果你发现了 GitHub 上有趣的项目,欢迎在 HelloGitHub 项目提 issues 告诉我们。


参考资料

[1]HelloGitHub: https://hellogithub.com
[2]点击查看往期内容: https://github.com/521xueweihan/HelloGitHub#内容



关注公众号加入交流群


“阅读原文”获取更多信息、“在看”让本文被更多人看到、“赞赏”支持我们。



本文分享自微信公众号 - HelloGitHub(GitHub520)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
返回顶部
顶部