第九期本周 GitHub 热榜

Posted 微笑很纯洁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第九期本周 GitHub 热榜相关的知识,希望对你有一定的参考价值。

【第九期】

哈喽,大家好,我是开源君,一个资深的互联网玩家,致力于为大家分享各领域优质开源项目。

今天梳理一下本周的 Github 热榜项目。不积硅步无以至千里,不积小流无以成江海;通过开源项目的积累,也是一种慢慢质变的过程。

javascript

30-seconds-of-code

项目地址:https://github.com/30-seconds/30-seconds-of-code

官网地址:https://www.30secondsofcode.org/

简介

项目提供简短的 JavaScript 代码片段来满足你开发的需求。在 GitHub 仓库里面有很多代码片段,而在官网有索引可供查找。

在 JavaScript 分类的数组中有以下片段,来得到数组中文件完整路径,采用了三种不同的方法:

// for 循环
const files = [ 'foo.txt ', '.bar', '   ', 'baz.foo' ];
let filePaths = [];

for (let file of files) {
  const fileName = file.trim();
  if(fileName) {
    const filePath = `~/cool_app/${fileName}`;
    filePaths.push(filePath);
  }
}

// filePaths = [ '~/cool_app/foo.txt', '~/cool_app/.bar', '~/cool_app/baz.foo']
// reduce 方法
const files = [ 'foo.txt ', '.bar', '   ', 'baz.foo' ];
const filePaths = files.reduce((acc, file) => {
  const fileName = file.trim();
  if(fileName) {
    const filePath = `~/cool_app/${fileName}`;
    acc.push(filePath);
  }
  return acc;
}, []);

// filePaths = [ '~/cool_app/foo.txt', '~/cool_app/.bar', '~/cool_app/baz.foo']
// 数组方法链式调用
const files = [ 'foo.txt ', '.bar', '   ', 'baz.foo' ];
const filePaths = files
  .map(file => file.trim())
  .filter(Boolean)
  .map(fileName => `~/cool_app/${fileName}`);

这只是其中的一个例子,类似的例子还有很多,感觉干货满满有没有。

它在本周收获了约 1,323 个 star,总计 86,050 star。

material-ui

项目地址:https://github.com/mui-org/material-ui

官网地址:https://mui.com/

简介

material-ui 是一个简单的、可定制的组件库,用于构建更快、更美观、更容易访问的 React 应用程序,一些知名的公司都在使用该组件库。

里面的组件还是挺齐全的,也比较精美。

它在本周收获了约 551 个 star,总计 71,713 star。

Java

spring-analysis

项目地址:https://github.com/seaswalker/spring-analysis

简介

Spring相关组件源码阅读笔记。包含了:

  • spring-core

  • spring-aop

  • spring-context

  • spring-task

  • spring-transaction

  • spring-mvc

  • guava-cache

它在本周收获了约 205 个 star,总计 10,708 star。

Sa-Token

项目地址:https://github.com/dromara/Sa-Token

简介

Sa-Token 是一个轻量级 Java 权限认证框架,主要解决:登录认证、权限认证、Session会话、单点登录、OAuth2.0、微服务网关鉴权 等一系列权限相关问题,功能如下:

  • 登录认证 —— 单端登录、多端登录、同端互斥登录、七天内免登录

  • 权限认证 —— 权限认证、角色认证、会话二级认证

  • Session会话 —— 全端共享Session、单端独享Session、自定义Session

  • 踢人下线 —— 根据账号id踢人下线、根据Token值踢人下线

  • 账号封禁 —— 指定天数封禁、永久封禁、设定解封时间

  • 持久层扩展 —— 可集成Redis、Memcached等专业缓存中间件,重启数据不丢失

  • 分布式会话 —— 提供jwt集成、共享数据中心两种分布式会话方案

  • 微服务网关鉴权 —— 适配Gateway、ShenYu、Zuul等常见网关的路由拦截认证

  • 单点登录 —— 内置三种单点登录模式:无论是否跨域、是否共享Redis,都可以搞定

  • OAuth2.0认证 —— 基于RFC-6749标准编写,OAuth2.0标准流程的授权认证,支持openid模式

  • 二级认证 —— 在已登录的基础上再次认证,保证安全性

  • Basic认证 —— 一行代码接入 Http Basic 认证

  • 独立Redis —— 将权限缓存与业务缓存分离

  • 临时Token验证 —— 解决短时间的Token授权问题

  • 模拟他人账号 —— 实时操作任意用户状态数据

  • 临时身份切换 —— 将会话身份临时切换为其它账号

  • 前后台分离 —— APP、小程序等不支持Cookie的终端

  • 同端互斥登录 —— 像QQ一样手机电脑同时在线,但是两个手机上互斥登录

  • 多账号认证体系 —— 比如一个商城项目的user表和admin表分开鉴权

  • 花式token生成 —— 内置六种Token风格,还可:自定义Token生成策略、自定义Token前缀

  • 注解式鉴权 —— 优雅的将鉴权与业务代码分离

  • 路由拦截式鉴权 —— 根据路由拦截鉴权,可适配restful模式

  • 自动续签 —— 提供两种Token过期策略,灵活搭配使用,还可自动续签

  • 会话治理 —— 提供方便灵活的会话查询接口

  • 记住我模式 —— 适配[记住我]模式,重启浏览器免验证

  • 密码加密 —— 提供密码加密模块,可快速MD5、SHA1、SHA256、AES、RSA加密

  • 全局侦听器 —— 在用户登陆、注销、被踢下线等关键性操作时进行一些AOP操作

  • 开箱即用 —— 提供SpringMVC、WebFlux等常见web框架starter集成包,真正的开箱即用

它在本周收获了约 153 个 star,总计 6,290 star。

Python

rich

项目地址:https://github.com/willmcgugan/rich

简介

Rich 是一个 Python 库,可以为您在终端中提供富文本和精美格式。通过运行脚本或者输入脚本即可显示出各种骚气的样式。

它在本周收获了约 515 个 star,总计 29,284 star。

RobustVideoMatting

项目地址:https://github.com/PeterL1n/RobustVideoMatting

简介

这个 RVM 项目专为稳定人物视频抠像设计。不同于现有神经网络将每一帧作为单独图片处理,RVM 使用循环神经网络,在处理视频流时有时间记忆。RVM 可在任意视频上做实时高清抠像。在 Nvidia GTX 1080Ti 上实现 4K 76FPS 和 HD 104FPS。该研究来自字节跳动。

从视频中抠人像的效果还是很棒的,头发丝细节都抠出来了。

它在本周收获了约 1,762 个 star,总计 2,602 star。

最近,开源君建了一个开源指南交流群,欢迎大家一起交流优秀开源项目与摸鱼,在公众号后台回复【666】邀请你入群。

最后,为了鼓励鼓励开源君 点赞 + 在看 不来一下吗,祝各位程序员开发无 Bug,发大财,行大运。

更多 Github 项目使用方式与玩法,点击下方卡片。

以上是关于第九期本周 GitHub 热榜的主要内容,如果未能解决你的问题,请参考以下文章

英语周报高三课标外研版第九期答案

Android Studio第九期 - QQ计步器效果

360互联网技术训练营第九期——360容器技术解密与实践

想神带你学数据结构 第九期 冒泡排序

考研级《计算机网络》知识梳理——第九期

第九期 华为拓扑-vlan间通信