开源周报第0期:GitHub Trending 流行开源项目榜中榜

本文原文为:开源周报第0期:GitHub Trending 流行开源项目榜中榜——开源工场,经授权发布于简书


开源周报

经过近一个月筹备,开源周报终于昂扬铿锵地上路了,参与开源越久,越能体会到开源带给这个时代和这个时代的我们的益处,本身开源就是一个开放协作的分享友谊,无数的程序员们将自己的项目和代码,大方骄傲地分享出来,然后有更多的程序员加入使用、共同开发中来,可以不客气地说,开源可能已经是推动IT领域发展最重要的一种形式和力量了。我们一直期待做一件事情,把开源领域好的东西遴选出来,新鲜的资讯,优秀的项目,发展的趋势,给老朋友和新朋友,给在校的学生,给已经奔跑在路上的程序员战友。今天这是开源周报的第0期,是我们这个尝试的开始。

开源周报的目标是:荟萃最新开源项目资讯,揽胜前瞻IT技术趋势。更新频率会是一周一期,每周一更新,同时会精选介绍一些开源周报提到的优秀开源项目。

时代走得很快,技术迭代和更新发展也很快,关注音乐的朋友一定知道,早先有Billboard、叱咤乐坛流行榜、华语音乐榜中榜、音乐风云榜等介绍一周或一月、一年最流行的音乐歌曲,在不晓得听什么歌的年代,关注这些音乐排行榜就对了,大多数是当时流行的红极一时的歌曲。而在我们IT领域,GitHub 是全球最大的代码托管平台,它也有一个 GitHub Trending 来介绍最近流行的开源项目,流行的判断标准主要是被 star 的数量,同时也会兼具参考被 fork 的数量。可以很容易通过 GitHub Trending 和我们的开源周报来了解最新的开源项目以及技术趋势,对于苟日新、日日新、瞬息万变的信息时代,这一点又格外重要和有意义。

如果你是一名学生,可以挑选最新的项目来关注、了解、参与、学习。

如果你已经在工作,可以关注到好的项目,站在巨人肩膀上,参与开放协作,不用重复造轮子,同时了解行业里最新的发展趋势和技术潮流。

Open Source Weekly 开源周报的固定网址为https://openingsource.org/weekly/

本周开源趋势 Top 10

1.Google /boardgame.io

boardgame.io该框架可以让游戏开发者轻松的改变规则来应对某些特定动作,比如当一个特定动作触发的时候,通过几个简单的函数就能描述游戏状态的如何改变,其余的事情就有框架来做。方便对游戏做出修改。

特点:

状态管理:游戏状态在浏览器,服务器和存储器之间自动进行无缝管理。

原型:调试界面甚至在渲染游戏之前模拟移动。

多人游戏:连接到同一游戏的所有浏览器都实时同步,不需要刷新。

日志:具有时间旅行能力的游戏日志(以较早的状态查看棋盘)。

UI工具包:React组件用于常见的游戏元素(卡片等)。

编辑评论 : 就个人而言,这使得游戏维护以及调试变得简单(维护之前没有的bug的时候)。会极大地提高生产效率。针对游戏里面的一些小范围改动,比游戏开发者自己去写代码修改更快,更直接。可以减少代码量,使用现成的框架,可以实现丰富的功能。

2. parcel-bundler/parcel

parcel:非常快,不需要配置的网络应用打包机

特点:

非常快——打包时间,多核编译,一个文件系统的存储器的重建甚至只需要花费一次重启的时间就能完成。创造性的支持JS, CSS, HTML,

file assets,而且不需要安装插件。在使用Babel, PostCSS,

PostHTML甚至no_module时可以在需要时自动转变模块。在使用动态import()声明时没有配置代码的分离。建立时支持热插拔。友好的记录错误的方式——语法会自动高亮代码框架帮助找出问题

使用parcel的优点:

在使用其他打包机时都会有配置文件和插件,配置文件会占用很多时间,它们不仅复杂而难以调配,而且在每个应用打包时都要再配置一次,而parcel的零配置可以让你只要给它一个入口文件,就可以让它做正确的事。

parcel运用多核处理器去平行编译你的代码,这会在开始打包时带来巨大的速度提升,而且它会用自己的文件系统存储编译后的代码,使得随后的运行更为迅速。

现存的打包机一般都会在运行时在一个文件内进行大量的代码转换与生成,这会导致效率的下降,相反parcel使用抽象语法树AST来进行转换,保证每个文件只需要一种语法解析,许多转换,一条代码生成。


parcel的工作原理:

许多打包机都是基于JS文件与一种其他格式的,但是parcel不会知道文件的格式,它将不需要配置的对你期望的任何文件展开工作。有许多格式的文件会在parcel中有特别的定义——如何将他们转变成特殊的文件类型。

parcel会将一个资源树转化为一个打包树,在资源树完成时,资源将会被放入打包树中,一个包将会创建给入口文件,而子包会按照动态输入来创建,这导致了代码的分离,子包在文件以不同格式输入时也会被创建。如果一个资源需要更多的包,它将被运到打包树中最近的资源来源,保证一个文件只有一个包。

在包树生成后,每个包将被依照文件格式决定的打包机写入文件,这些打包机知道如何联合这些文件代码为最终在浏览器上读取的文件。

3.Lidanger/LiteDB.wiki_translation_zh-cn

LiteDB 是一个单数据文件.NET NoSQL的文档存储。它是一个小型的,轻量,快速的NoSQL嵌入式数据库,可以方便的存储和搜索文档。

特点 :

Serverless NoSQL 文档存储

类似于 MongoDB 的简单 API

100% C# 代码,支持.NET 3.5 / .NET 4.0 / NETStandard 1.3 / NETStandard 2.0,单 DLL (小于 300kb)

支持线程和进程安全

支持文档/操作级别的 ACID

支持写失败后的数据还原 (日志模式)

可使用 DES (AES) 加密算法进行数据文件加密

可使用特性或 fluent 映射 API 将你的 POCO类映射为 BsonDocument

可存储文件与流数据 (类似 MongoDB 的 GridFS)

单数据文件存储 (类似 SQLite)

支持基于文档字段索引的快速搜索 (每个集合支持多达16个索引)

支持 LINQ 查询

Shell 命令行

与 SQLite对比相当快

开源,对所有人免费 – 包括商业应用

可以从 NuGet 安装:Install-Package LiteDB

在线测试:

相关资源:


一个GUI(图形用户界面)查看工具https://github.com/falahati/LiteDBViewer

一个GUI(图形用户界面)编辑工具 https://github.com/JosefNemec/LiteDbExplorer

Lucene.NET目录https://github.com/sheryever/LiteDBDirectory

支持LINQPadhttps://github.com/adospace/litedbpad

支持F#https://github.com/Zaid-Ajaj/LiteDB.FSharp

4.Facebook/Docusaurus

Docusaurus是一个轻松构建,部署和维护开源项目网站的项目。

特点 :

启动简单Docusaurus被构建在尽可能短的时间内容易地启动和运行。我们已经构建了Docusaurus来处理网站构建过程,以便您可以专注于您的项目。

本地化的Docusaurus 通过CrowdIn 提供本地化支持。通过翻译文档来增强您的国际社区的地位。

可自定义虽然Docusaurus带有您需要开始的关键页面和部分,包括主页,文档部分,博客和其他支持页面,但它也是可自定义的,以确保您拥有一个独一无二的网站。

5.30 seconds of code

“30 seconds of

code”意为30秒内可以理解的优秀JavaScript代码。这个项目收录了许多优秀的JavaScript的代码片段,这些代码依据ES6标准并通过Babel编写,确保了代码的向后兼容性,值得收藏并掌握。作者们已将代码分类并编写了目录,我们能够轻松地从中找到我们所需的知识。

6.math as code

这是一个用JavaScript的代码来解释数学符号的指南。程序员可以借此更容易的理解数学符号。数学家也可以借此使用程序来进行数学工作。该项目使用如下方式把数学符号和代码段一一对应:

7.popmotion

一个用来开发网页的js库,兼容众多浏览器,具有补间动画等快捷功能,能快速,简单的达到许多不错的网页效果,同时支持CSS,SVG等诸多风格。

安装:

npm install popmotipn --save

1npm install popmotipn --save

导入:

import { tween } from 'popmotion'

1import { tween } from 'popmotion'


示例:

tween({

    from: {x:24, y: 200},

    to: 0, //Both x and y will tween to 0

    ease: { x:easing.easeOut, y: easing.easeIn }

})

1

2

3

4

5

tween({

    from: {x:24, y: 200},

    to: 0, //Both x and y will tween to 0

    ease: { x:easing.easeOut, y: easing.easeIn }

})


8.Coding interview university

教你一步步成为合格软件工程师的学习指南,目前已有包括中文在内的多国语言版本。

项目片段 :

9.RectDec

基于LLVM的解码器,支持众多格式和架构。目前也提供网页服务,可以输出c python代码文件。

目前支持Win7(及以上),Linux,unofficially macOS


10.Git Flight Rules

飞行指南(错误指南),以如下的形式详细阐述了各种问题情形下你应采取的措施。

好了,本期第0期开源周报到此就结束了,今年还能再见一面,先祝大家给自己的女朋友买好了元旦礼物!下次周报再提醒你就来不及了老铁!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容