第九期本周 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 热榜的主要内容,如果未能解决你的问题,请参考以下文章