Hypercrx:开源项目不只有Star

01

战队简介

大家好,我们是Hypercrx战队,非常荣幸获得了首届Microsoft Edge浏览器开拓者大赛的一等奖!我是队长唐烨男(中),位于我左侧的是宁志成,右侧的是林以任,我们都来自华东师范大学数据科学与工程学院。我们的口号是:“热爱数据,热爱开源,追求效率!

3660d53eb9f473e34aa74c5d1f74bc45.png

02

作品介绍

我们的插件作品是Hypercrx(发音为“Hai-puh CRX”)。在后疫情时代,线上协作在日常生产中发挥着越来越大的作用。开源作为线上协作的典范模式,其在软件行业的地位也愈显突出。对于GitHub上千千万万的开源项目,您还在通过Star数来判断它们的发展情况吗?快试试Hypercrx吧!

所有GitHub用户都能试试我们的插件。Hypercrx基于X-lab开放实验室提供的GitHub全域日志分析数据,实现了若干个交互式图表组件并将它们嵌入到GitHub页面中,使用户足不出GitHub就能探索发现他们所关心的价值。

如下图所示,Hypercrx目前主要在GitHub的两个页面插入了图表组件:个人页面和仓库页面。用户在安装插件后访问相应页面即可体验我们的图表组件。

28624cb83f9264661caae7610bf08c97.png

在仓库页面,我们嵌入了项目协作网络图项目开发者协作网络图项目活跃度和影响力趋势图;在个人页面,我们嵌入了开发者协作网络图、开发者活跃仓库网络图、开发者活跃度和影响力趋势图。下面的动图展示了这些图表的交互性:

3104d07b084e78f969f4080cc0d790a9.gif

每个图表的具体含义请见Hypercrx仓库中的 README。

03

技术创新

Hypercrx在数据、呈现形式和开发流程上都有创新之处。

数据创新

Hypercrx的所有数据来自X-lab开放实验室下的OpenDigger项目。指标体系是OpenDigger标签类目清单中的重要组成部分,目前主要包括仓库和开发者的活跃度、影响力、和价值网络等,这些落地指标已经有多个应用场景。我们认为这些指标非常有价值,比单一的“以Star论英雄”好太多了,故Hypercrx依托OpenDigger的产出数据来构建应用。

029357144783215fa561c6ba89cc0db0.png

呈现形式创新

Hypercrx借助Extension ContentScript的能力,直接在GitHub UI中嵌入所有的图表组件,并且我们抽取了GitHub原生样式,使Hypercrx与GitHub浑然一体。

此外,Hypercrx支持Dark和Light两套主题,中文和英文两种语言,这些设置默认跟随系统,但也能在我们提供的Options Page中手动设置。我们还利用微软Fluent UI的TeachingBubble控件对新用户进行提示引导,使用户能在最短的时间内上手使用。

fb2f364c37de16b847085fe22aac12d2.png

开发流程创新

由于Hypercrx重度依赖ContentScript,而在开发中,ContentScript的更新必须手动重载插件后再重载页面才能生效,耗时耗力。为了解决这个不便之处,我们基于DevServer热更新的原理和插件通信API,使得Webpack每次成功增量编译后,插件的Backgroud会收到DevServer的通知自动重载,并通知相关页面重载,这大大优化了开发体验。

我们还利用Edge Add-on的发布API,在GitHub仓库中配置了一个Workflow,于是只要鼠标一点就能一键发布最新的版本到Edge商店等待审核,再也不用手动发布了!

可以看到,Hypercrx不仅对用户友好,对开发者也很友好,我们有信心能长期维护此项目,让它越来越好!

04

运营迭代

Hypercrx的运营迭代全部发生在GitHub上。如下图所示,我们通过Issues来收集问题和需求,并将Issues放到合适的迭代计划中。开发者通过写代码提PR来解决一个个Issues,一旦迭代计划中的Issues都被解决,我们就可以发布新版本到商店。如此循环。

63fae148af56e3fcd2eb3e65780c775f.png

从9月21日起,Hypercrx社区还会在每周三中午进行公开的线上双周例会,欢迎大家来参加!

05

参赛感想

浏览器是我们每天都离不开的工具,GitHub又是程序员经常访问的平台。浏览器插件具有打通GitHub UI和OpenDigger指标体系的潜力,使插件用户在GitHub内就能享受一体化的社区数据洞察体验,我们做到了!

感谢Microsoft Edge开拓者大赛组委会举办了这样一场丰富多彩的赛事,给大家一个发挥想象力和行动力的舞台!感谢孜孜不倦、热情热心的大赛小助手们,你们给了我有史以来最棒的参赛体验!感谢Hypercrx社区所有的贡献者,这份荣誉共属于你们!

06

欢迎体验

疫情改变了人们的生活,也让大家更加注重生活方式。本次参赛创意践行了大赛“赋能生产力提高”的理念,致力于帮助人们提高工作、学习的效率,优化日常生活体验。Hypercrx目前已成功上架到Microsoft Edge 插件商店,欢迎大家在PC端安装使用,并反馈你们的使用体验。

安装链接:https://microsoftedge.microsoft.com/addons/detail/hypercrx/lbbajaehiibofpconjgdjonmkidpcome  

07

关于X-lab

在Hypercrx战队中,唐烨男和宁志成是X-lab开放实验室的正式成员。

X-lab开放实验室定位为一个开源研究与创新的开放群体,是一群由来自国内外著名高校、创业公司、部分互联网与IT企业的专家学者与工程师所构成,聚焦于开源软件产业开放式创新的共同体。专业背景包括计算机科学、软件工程、数据科学、工商管理学、社会学、经济学等跨学科领域,长期思考并实践开源战略、开源测量学、开源数字生态系统等主题。目前已在包括开源治理标准制定、开源社区行为度量与分析、开源社区流程自动化、开源全域数据治理与洞察等方面做出了较有影响力的工作。

X-lab开放实验室在GitHub平台上全面开展他们的工作,欢迎大家关注和参与:https://github.com/X-lab2017!

63d774a642615f11473fb0f3d0c3b1e9.jpeg

X-lab

扫码关注

 X-lab开放实验室

往期推荐

01

构建开源领域的数据生态:OpenDigger 在木兰社区的前行之路

02

开源点亮未来2.0——开放协作的世界里,每一份贡献都值得回报

03

官宣!2021中国开源年报震撼首发!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/282536.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP上传图片到数据库,并进行显示

1、创建数据表 CREATE TABLE ccs_image (id int(4) unsigned NOT NULL auto_increment,description varchar(250) default NULL,bin_data longblob,filename varchar(50) default NULL,filesize varchar(50) default NULL,filetype varchar(50) default NULL,PRIMARY KEY (id)…

.NET 反向代理-YARP

什么是 YARPYARP (另一个反向代理) 设计为一个库,提供核心代理功能,你可以根据应用程序的特定需求进行自定义。YARP 是使用 .NET的基础架构构建在 .NET上的。YARP 的主要不同之处在于,它被设计成可以通过 .NET 代码轻松定制和调整&#xff0c…

JavaScript 开发的45个经典技巧

2019独角兽企业重金招聘Python工程师标准>>> 前言:此篇译文在各网站均有标注原创的声明,译者名字已不可考,暂为佚名 JavaScript是一个绝冠全球的编程语言,可用于Web开发、移动应用开发(PhoneGap、Appcelera…

回归远程 - 云原生IDE是IaC从表象触达本质的必然选择 | SmartIDE

作者:徐磊,开源云原生SmartIDE创始人、LEANOSFT创始人/首席架构师/CEO,微软最有价值专家MVP/微软区域技术总监Regional Director,华为云最有价值专家。从事软件工程咨询服务超过15年时间,为超过200家不同类型的企业提供…

[BZOJ]1095 Hide捉迷藏(ZJOI2007)

一道神题,两种神做法。 Description 捉迷藏 Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子。某天,Jiajia、Wind和孩子们决定在家里玩捉迷藏游戏。他们的家很大且构造很奇特,由N个屋子和N-1条双向走廊组成,这N-1条走…

Spring4-自动装配Beans-通过注解@Autowired在构造方法上

1.创建Maven项目,项目名称springdemo19,如图所示2.配置Maven,修改项目中的pom.xml文件,修改内容如下<project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation"http://mave…

15个开源的工业软件

出品 | OSC开源社区&#xff08;ID&#xff1a;oschina2013)不同的工业流程&#xff0c;需要不同的工业软件。此前&#xff0c;我们已经介绍了面向研发设计环节的开源软件&#xff08;详情查看&#xff1a;20 个开源的工业设计软件&#xff09;&#xff0c;今天就来介绍一下面向…

MySQL远程访问报错解决

2019独角兽企业重金招聘Python工程师标准>>> 我之前的一篇博客讲了MySQL配置远程访问的方法&#xff0c;但是可能配置了账户以后还是不能访问&#xff0c;这可能是防火墙的原因&#xff0c;在CentOS里&#xff0c;我们修改一下防火墙设置就可以了 1. 进入防火墙配置…

GNU/Linux与开源文化的那些人和事

一、计算机的发明 世上本无路&#xff0c;走的人多了&#xff0c;就有了路。世上本无计算机&#xff0c;琢磨的人多了……没有计算机&#xff0c;一切无从谈起。 三个人对计算机的发明功不可没&#xff0c;居功至伟。阿兰图灵&#xff08;Alan Mathison Turing&#xff09;、阿…

PHP使用PHPMailer发送邮件

1. 首先下载phpmailer插件,并将插件复制到目录下 下载地址: http://download.csdn.net/download/m_nanle_xiaobudiu/10261269 2. home/view/user/mail_chck.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><…

python学习记录2

一、两个模块&#xff08;sys和os&#xff09; 1 #!/usr/bin/env python2 # _*_ coding: UTF-8 _*_3 # Author:taoke4 import sys5 print(sys.path)#打印环境变量6 print(sys.argv[0])#当前文件相对路径,sys.argv是一个列表&#xff0c;第一个元素为程序本身的相对路径&#xf…

将 Figma 设计转换为 .NET MAUI Graphics 代码

原文链接&#xff1a;https://github.com/jsuarezruiz/figma-to-maui-graphics原文作者&#xff1a;jsuarezruiz翻译&#xff1a;沙漠尽头的狼(谷歌翻译加持)&#xff0c;翻译别扭&#xff0c;建议直接阅读原文使用FigmaSharp.Maui.Graphics将Figma设计转换为 .NET MAUI Graphi…

mooc- 基本程序设计方法week1,week2

学习了第一单元我们几本可以写出10行左右的代码。 week1:python编程之基本方法 1、从计算机到程序设计语言&#xff1a; 理解计算机&#xff1a;计算机是能够根据一组指令操作数据的机器。 功能性&#xff1a;可以进行数据计算 可编程性&#xff1a;根据一系列指令来执行 计算机…

Windows 11 的 2022 更新为每个人带来了新的东西

Windows 网站发布博客&#xff0c;宣布今天在 190 多个国家/地区推出 Windows 11 2022 更新。微软在过去一年中对 Windows 11 进行了非常大的改进&#xff0c;感觉每个月都有一次更新。对于之前的 Windows 11&#xff0c;相信很多人在使用过程中也遇到过或大或小的问题。而一部…

HTML5 Canvas 绘制六叶草

注意&#xff1a; context.arc(横坐标,纵坐标,弧半径,起始角度,终止角度,逆顺时针);这个函数挺难用&#xff0c;主要原因是最后参数和角度的关系。不管文档怎么说&#xff0c;按我的实际经验&#xff0c;逆顺时针false时&#xff0c;是逆时针旋转&#xff1b;逆顺时针true时&am…

哪些听起来像段子一样的故事?

杭州海底世界&#xff0c;一个小走廊两边都是各种爬行动物展览。有两只蜥蜴当时是这个样子人还年轻&#xff0c;还比较猥琐&#xff0c;看到一个趴在另一个身上就觉得在做什么羞羞的事。于是就拍下来&#xff0c;发到群里&#xff0c;然后说了句交配中。然后一天就光拍照&#…

String 与 StringBuilder 区别与用法

String用final修饰&#xff0c;实际上是不可更改的。我们平常用的“”来连接&#xff0c;实际执行过程中是将原字符串连接之后生成新的对象重新赋值给这个名字的字符串。Testpublic void myStrTest(){String s "str_s";System.out.println(s);String ss s.toUpperC…

防跳墙访问

出现场景: 1. 没有登录&#xff0c;也能访问网页 2. 没有相关权限&#xff0c;也能访问对应的控制器和方法 解决方案: 定义一个CommonController,其他控制器继承CommonController,在CommonController中定义初始化方法_initialize 注:这里用的是tp3.2框架,如果我们直接在Commo…

C# WPF开源控件库HandyControl用法举例

概述HandyControl是一款免费开源的WPF控件库&#xff0c;Github可以获取到源代码&#xff0c;相关的示例代码也在github上能获取到&#xff0c;但是没有详细的中文说明文档&#xff0c;对于新手而言使用起来还是会有一些困扰&#xff0c;网上也很难搜到相关的用法示例&#xff…

nginx服务器,访问时显示目录,不直接显示index.php

一、效果 二、解决方案 修改网站配置文件&#xff0c;添加如下代码&#xff1a; autoindex on; autoindex_exact_size off; autoindex_localtime on; 修改后的网站配置文件如下&#xff1a; server {listen 80;server_name test.haveyb.com;charset utf-8;error_log …