Skip to content

Latest commit

 

History

History
183 lines (132 loc) · 9.5 KB

HelloGitHub28.md

File metadata and controls

183 lines (132 loc) · 9.5 KB

《HelloGitHub》第 28 期

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

简介

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

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

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

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

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


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

C# 项目

1、choco:类似 yum、apt-get、brew 的 Windows 包、软件管理、自动安装工具

C++ 项目

2、cpp-cheat-sheet:能够帮你通过 Google 和 NASA 面试的 C++ 数据结构和算法的 cheat sheet(英文)

3、cpp-taskflow:一个 C++ 头文件库,让你以简单的几行代码就可以实现高效的并发。示例代码如下:

#include "taskflow.hpp"  // the only include you need

int main(){
  
  tf::Taskflow tf(std::thread::hardware_concurrency());

  auto [A, B, C, D] = tf.silent_emplace(
    [] () { std::cout << "TaskA\n"; },               //  the taskflow graph
    [] () { std::cout << "TaskB\n"; },               // 
    [] () { std::cout << "TaskC\n"; },               //          +---+          
    [] () { std::cout << "TaskD\n"; }                //    +---->| B |-----+   
  );                                                 //    |     +---+     |
                                                     //  +---+           +-v-+ 
  A.precede(B);  // B runs after A                   //  | A |           | D | 
  A.precede(C);  // C runs after A                   //  +---+           +-^-+ 
  B.precede(D);  // D runs after B                   //    |     +---+     |    
  C.precede(D);  // D runs after C                   //    +---->| C |-----+    
                                                     //          +---+          
  tf.wait_for_all();  // block until finished

  return 0;
}

CSS 项目

4、pure:雅虎公司出品的一组轻量级、响应式纯 CSS 模块,适用于任何 Web 项目。本网站就是采用 Pure.css 模版构建,中文文档

Go 项目

5、go-fundamental-programming:无闻出品的《Go 编程基础》教程

6、go-cloud:还在为兼容不同的云平台 SDK 而烦恼吗?go-cloud 通过封装不同云平台的接口,向用户提供统一的 API。例如:阿里云和腾讯云的存储桶 API 不一样,但是通过 go-cloud 的封装,可以使用统一的 API 调用

7、night-reading-go:Go 夜读,该项目每周四晚上更新 Go 源码阅读以及线下技术讨论。难得的中文 Golang 源码解析,包含文档和YouTube 视频,干货满满

8、xinge-api-Golang:腾讯信鸽 push v3 版的 Golang SDK。支持函数式配置项、标签推送、全平台推送、批量推送等

9、go-mysql:监听 MySQL binlog 的库,可以用来把主库 MySQL 的变化同步到 Redis、elasticsearch 等。同时提供了一个类似阿里 canal 的工具库,监听并解析 binlog 变化。让管理数据和了解数据状态变得更加轻松

Java 项目

10、vjtools:唯品会的 Java 技术干货分享

11、Auto.js:不需要 ROOT 权限的类似按键精灵的自动操作软件,可以实现自动点击、滑动、输入文字、打开应用等。Auto.js 的大部分用户用它来点赞、签到、刷游戏

12、MTransition:一个 Android 的 Activity 切换动画库。该库可以用少量代码实现一些复杂的、自定义的 Activity 切换动画

JavaScript 项目

13、Web-Series:现代 Web 开发导论,内容大纲如下:

  • 基础篇
  • 进阶篇
  • 架构优化篇
  • React 篇
  • Vue 篇

14、taro:一套 React 语法规范的多端开发解决方案。我们可以只书写一套代码,再通过 Taro 的编译工具,将源代码分别编译出可以在不同端(微信小程序、H5、React-Native 等)运行的代码。已经投入到了京东生产环境使用,示例代码如下:

import Taro, { Component } from '@tarojs/taro'
import { View, Button } from '@tarojs/components'

export default class Index extends Component {
    constructor () {
        super(...arguments)
        this.state = {
            title: '首页',
            list: [1, 2, 3]
        }
    }
    ....   // 代码来源官网示例
}

15、G6:蚂蚁金服出品的关系数据可视化引擎,开发者可以基于 G6 拓展出属于自己的图分析应用或者图编辑器应用。官方文档,示例代码:

import G6 from '@antv/g6';

const data = {
  nodes: [{
    id: 'node1',
    x: 100,
    y: 200
  },{
    id: 'node2',
    x: 300,
    y: 200
  }],
  edges: [{
    target: 'node2',
    source: 'node1'
  }]
};
const graph = new G6.Graph({
  container: 'mountNode',
  width: 500,
  height: 500
});
graph.read(data);

16、DesktopNaotu:桌面版脑图是基于百度脑图的本地化版本,帮助你在没有互联网环境的情况下,依然可以使用脑图工具。开箱即用,跨平台支持 Windows/Linux/Mac OS。桌面版思维工具,目前 Xmind 使用很多,但是需要收费,对于不常用,要求没有严格可以考虑此项目

Kotlin 项目

17、kotlin-in-chinese:Kotlin 官方文档翻译项目

Python 项目

18、Scylla:一款高质量的免费代理 IP 池工具,仅支持 Python 3.6。中文文档,特性如下:

  • 自动化的代理 IP 爬取与验证
  • 易用的 JSON API
  • 简单但美观的 web 用户界面,基于 TypeScript 和 React(例如,代理的地理分布)
  • 最少仅用一行代码即可与 Scrapy 和 requests 进行集成
  • 等等

其它

19、spark_study:Spark 源码阅读笔记

20、InterviewMap:这是一份制作精良、系统的面试图谱。内容包括:前端、计算机网络、算法、数据结构等方面。相信认真学习完这份资料,你会找到自己心仪的工作。在线阅读

21、Best-App:苹果系统下的优秀软件、硬件、技巧、周边设备的集合

22、follow-me-install-kubernetes-cluster:部署 kubernetes 集群教程。该教程介绍使用二进制部署最新 kubernetes 集群的所有步骤,而不是使用 kubeadm 等自动化方式来部署集群。这样有助于理解系统各组件的交互原理,进而能够快速定位、解决实际中遇到的问题

开源书籍

23、The-Flask-Mega-Tutorial-zh:2017 年新版《The Flask Mega-Tutorial 教程》(狗书)中文翻译版

24、progit2:《Pro Git 第二版》在线中文阅读


换种方式阅读

声明

如果你发现了好玩、有意义的开源项目 点击这里 分享你觉得有意思的项目。

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