HelloGitHub/content/HelloGitHub25.md

14 KiB
Raw Permalink Blame History

《HelloGitHub》第 25 期

兴趣是最好的老师,HelloGitHub 让你对编程感兴趣!

目录

点击右上角的 「目录」 图标打开目录,获得更好的阅读体验。

Tips:如果遇到图片刷不出来的情况,点击 换一种浏览方式。


关注「HelloGitHub」公众号第一时间收到推送

内容

以下为本期内容|每个月 28 号更新

C 项目

1、swipe-workspace:基于 libinput 实现 Linux 系统下通过二指滑动控制面板,切换屏幕的程序。虽然功能简单,且不支持全平台。但是十分推荐这种自己动手实现一个实用的功能这种行为,这是非常有成就感的事情

CSS 项目

2、tabler:一套基于 Bootstrap 4 免费开源的 Dashboard 模版

Go 项目

3、dynamo.cliAWS DynamoDB 是一项快速灵活的 NoSQL 数据库服务。如果大家使用这个用服务,但又记不住蹩脚的 AWS 客户端的查询命令。可以使用这个工具,通过 SQL 命令查询、操作 Amazon DynamoDB 数据库

4、mqant:一款基于 Go 语言的简洁、高性能的分布式游戏服务框架。快速上手文档,作者阐述了自己为什么选用 Go 作为开发语言和一些设计思路

Java 项目

5、JCSprout该项目介绍的内容包含Java 基础知识、底层原理、算法详解、大厂面试真题等

JavaScript 项目

6、battle-city:基于 React 的经典坦克大战,在线试玩。欢迎感兴趣的小伙伴动起手来提交代码加入到这个项目

7、gcoord:一个处理地理坐标的轻型 JS 库。由于处理国内对于地理坐标有特殊的政策,导致从 API 得到的地理坐标放在百度地图或高德地图上会有数百米的偏移gcoord 可以将坐标在不同坐标系下转换,修正偏移。转换为百度地图坐标系的示例代码:

var result = gcoord.transform(
    [ 116.403988, 39.914266 ],    // 经纬度坐标
    gcoord.WGS84,                 // 当前坐标系
    gcoord.BD09                   // 目标坐标系
);

console.log( result );  // [ 116.41661560068297, 39.92196580126834 ]

8、SVG-Skeleton:通过 SVG 元素去描述去骨骼图的占位元素。支持 JSX 让编写 SVG 无差别化、复用 SVG 片段、类组件化模式。让交互变得更加人性化适合当下技术流行趋势2KB 的大小根本不必担心加载问题。示例代码如下:

import SVGSkeleton from 'svg-skeleton';

const { h, render } = SVGSkeleton;

// 内置 #shining 动画
const Item = (
    <svg width="750" height="191">
        <circle cx="95" cy="102" r="63" fill="#edeff0" mask="url(#shining)" ></circle>
        <rect width="160" height="35" x="190" y="45" fill="#edeff0" mask="url(#shining)" ></rect>
        <rect width="400" height="35" x="190" y="90" fill="#edeff0" mask="url(#shining)" ></rect>
        <line x1="0" y1="190" x2="750" y2="190" stroke="#edeff0"></line>
    </svg>
);

const Page = ( ( ) => {
    let List = [ ];

    for ( let i = 0; i < 6; i++ ) {
        List.push( ( <Item y={ i == 0 ? 0 : i * 191 } ></Item> ) );
    }

    return (
        <svg width="750" height="1334" fill="#fafafa">
            { List }
        </svg>
    );
} )( );

render( Page,  document.body );

9、vuepressVue 官方出品的静态网站生成器。大家的个人博客是不是要折腾一番了?官方中文文档

10、zan-proxy:该项目集成了 HTTP 请求转发、模拟响应数据、自定义 DNS 解析等功能。使得可以本地代码调试线上页面,环境再也不是问题。对于处于开发环境“恶劣”的开发者来说是种福音和解脱

Objective-C 项目

11、RDM:轻松地改变 MacBook Retina 屏幕分辨率的工具

Python 项目

12、airflow:定时任务管理平台,管理和调度各种离线定时任务,自带 Web 管理界面。当定时任务量达到百级别的时候,就无法再使用 crontab 有效、方便地管理这些任务了。该项目就是为了解决了这个问题而诞生的

13、pook:模拟 HTTP 请求结果的库,可用于单元测试等场景。采用装饰器方式调用的示例代码如下:

import pook
import requests

@pook.get('http://httpbin.org/status/500', reply=204)
@pook.get('http://httpbin.org/status/400', reply=200)
def fetch(url):
    return requests.get(url)

res = fetch('http://httpbin.org/status/400')
print('#1 status:', res.status_code)

res = fetch('http://httpbin.org/status/500')
print('#2 status:', res.status_code)

14、Synonyms:中文近义词工具包。支持自然语言理解的很多任务:文本对齐、推荐算法、相似度计算、语义偏移、关键字提取、概念提取、自动摘要、搜索引擎等。示例代码如下:

import synonyms
synonyms.seg("能量")

15、wtfpython:有趣、令人惊讶(坑爹)、鲜为人知的 Python 代码片段集合。中文

其它

16、awesome-spider:爬虫集合,大多为 Python 语言项目

17、javascript-lessons《JavaScript 闯关记》该教程部分章节精心设计了挑战关卡

18、linux-insidesLinux 内核揭密。中文

19、open-source-mac-os-apps英文macOS 系统上的开源应用集合,并标注了应用通过那种编程语言实现

开源书籍

20、advanced-go-programming-book《Go语言高级编程》该书针对 Go 语言有一定经验,想更加深入了解 Go 语言各种高级用法的开发人员

21、modern-cpp-tutorial:《高速上手 C++ 11/14/17》阅读须知

  1. 本书假定读者已经熟悉了传统 C++ ,至少在阅读传统 C++ 代码上不具备任何困难。换句话说,那些长期使用传统 C++ 进行编码的人、渴望在短时间内迅速了解现代 C++ 特性的人非常适合阅读本书;
  2. 本书一定程度上介绍了一些现代 C++ 的黑魔法,但这些魔法毕竟有限,不适合希望进阶学习现代 C++ 的读者,本书的定位系现代 C++ 的快速上手。当然,希望进阶学习的读者可以使用本书来回顾并检验自己对现代 C++ 的熟悉度。

机器学习

22、ChatBotCourse:该项目介绍了如何自己动手做聊天机器人。全面地介绍了所需要的技术:自然语言识别、分词、语料库、机器学习等,包含所需的 Java 和 Python 代码

23、pytorch-book:书籍《深度学习框架 PyTorch入门与实践》的示例代码可以作为一个独立的 PyTorch 入门指南和教程。内容结构如下图所示:

『上一期』 | 反馈和建议 | 『下一期』


👉 来!推荐开源项目 👈
微信中搜:HelloGitHub 关注公众号
不仅能第一时间收到推送,还有回馈粉丝的活动
如果文中的图刷不出来,可以点击 这里

赞助


UCloud
超值的全球云服务

CDN
开启全网加速

OpenIM
开源IM力争No.1

Apifox
比 Postman 更强大

He3
开发者必备工具箱

PromptPerfect
大模型提示词开发工具

声明

知识共享许可协议
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。