作为全球最大的代码托管平台,GitHub 同时也是一个拥有良好社区氛围的开源社区。在来自世界各地的开发者与用户的共同努力下,GitHub 上积攒了许多优质的开源项目。
这篇文章整理了 14 个实用或有趣的 GitHub 项目,从开源软件、开源硬件与教程三个方面与你分享我在 GitHub 漫游时的收获。
搜索资源、跟踪更新、交流反馈……掌握这些技巧你也能找到 GitHub 上的好资源
在浓厚的社区氛围下,GitHub 孕育出了一系列开源软件。它们大多免费提供、更新频繁,开发者也更加愿意倾听用户的声音,开放的源代码也让用户不必过于担心隐私问题。希望这些我常用的开源软件也可以为你提供帮助。
macOS 用户一定对敲下空格键来预览文件内容十分熟悉。在从 macOS 切换到 Windows 后,我还是时常会习惯性的敲下空格试图预览文件,但显然是无用功。QuickLook 这个项目可以帮助我们解决这个问题。
QuickLook 不仅原生支持几乎所有的文本文件、图片文件和音视频文件,还支持代码高亮,你也可以手动安装插件进一步丰富它的功能,例如:预览文件夹内容、Torrent 文件、APK 文件等。
如果你希望在 Windows 上快速预览文件,QuickLook 可能是个不错的选择。
iOS 和 Android 都有十分丰富的桌面小组件,我们可以利用这些小组件自定义自己的桌面,让它变得更高效或是美观。在 Windows 8 之后,微软不再为 Windows 提供官方的小组件,但 Rainmeter 为桌面自定义注入了新的生机。JaxCore 则是基于 Rainmeter 的一款皮肤插件。JaxCore 则是 Rainmeter 的一个开源皮肤插件。
JaxCore 是一系列模块和小组件的核心服务,其中包括常规的桌面时钟、媒体控制器等小组件,也提供了一些功能性更强的模块。我们可以使用 Volume Mixer 来单独控制某一个软件的音量,使用 QuickNote 来获得接近 macOS 快速备忘录的使用体验,甚至直接将 MIUI 的控制中心「搬」到 Windows 上来。
相信很多人都有 C 盘被小而美支配的绝望体验。微信可能自动下载了无数文件、图片、视频,即使告诉你文件已过期,它仍有可能静静地躺在硬盘的某个角落。CleanMyWechat 可以帮助你删除那些被小而美埋藏在硬盘中的文件。
CleanMyWechat 提供了丰富的自定义选项,你可以管理多个微信账户的数据,指定删除图片、视频、文件、缓存中的一项或多项。在使用 CleanMyWechat 前,强烈建议备份可能需要的文件。
AltTab 还提供了丰富的自定义选项,我们不仅可以自定义外观,还可以分别配置两组快捷键,例如使用 Command + Tab (⌘ + ) 在所有 App 间快速切换,使用 Option + Tab (⌥ + ) 在当前应用的不同窗口间切换。
如果希望改善 macOS 上的多任务切换体验,可以尝试使用 AltTab 代替原生的多任务切换。
Rayon 是一款 iOS 和 macOS 上的 linux 服务器监控程序。Rayon 提供了服务器、用户和代码片段三项的集中管理。你可以使用 Rayon 快速以图表形式查看服务器的运行状况、连接到服务器的 SSH 服务或者进行文件管理,Rayon 目前并不提供多端同步,
macOS 上的 Rayon 还为我们提供了状态栏的 Running Cat,看一眼状态栏上奔跑的猫猫就能大概了解服务器的工作状态了。相比 Termius 较为昂贵的价格,Rayon 目前可以在 App Store 免费下载。
如果需要一个 SSH 管理软件(和一只在状态栏奔跑的猫猫),可以尝试使用 Rayon。
Syntax Highlight 是一款快速预览的插件,为预览代码提供高亮显示。你可以在 Syntax Highlight 中,自定义代码高亮的色彩方案、字体、是否显示行号等,并可以针对不同的语言进行自定义。除了基础的自定义功能外,Syntax Highlight 还支持版本管理与外部语言服务器支持等。
如果你需要经常在 macOS 上与代码打交道,Syntax Highlight 或许可以提升使用体验。
还记得被同事或者朋友的 Windows 电脑右下角那像狗皮膏药一样的「激活 Windows」支配的恐惧吗?
请不要担心,即使你使用的是 macOS,立刻安装 ActivateMac,你也可以享受狗皮膏药的「绝佳」体验。再也不用担心在人群中格格不入了!
LANDrop 是一款跨平台局域网文件传输软件,我在 Windows 和 macOS 之间传输文件时,Windows 设备总是不能正常连接到 macOS 设备共享的文件夹。在找到 LANDrop 后,我终于可以摆脱在两台电脑上登录不同的 QQ 账号来传输文件的困境了。
LANDrop 的使用十分简便,只需打开发送窗口拖入需要发送的文件选择接收设备在接收设备上核对验证码并确认接受。LANDrop 的传输仅需要设备在一个局域网中,速度也可以几乎跑满局域网的传输速率(但还是没有 AirDrop 快)。
你可以在 LANDrop 设置中自定义设备名称、下载路径及是否可被发现,也可以指定 LANDrop 服务使用的端口。
如果你和我一样,需要在不同平台的设备间传输一些文件,那么可以试一试使用 LANDrop。
疫情反复的时间里,相信不少学生都饱受网课的折磨。如果你和我一样,遇到了一个上课录屏却不发 PPT 的老师,extract-video-ppt 这款可以从视频中截取 PPT 内容并导出为 PDF 文件的命令行工具或许能够给你一些帮助。
美中不足的是,它的转换速度并不算快(GIF 经过加速),如果录屏时间较长可能需要较久的等待;如果你的老师在 PPT 间反复横跳,那么导出的 PDF 文件中可能存在重复的页。
除了开源软件,GitHub 上还有着许多有趣的开源硬件项目。无论你是希望学习硬件设计、嵌入式开发技能,或者只是想做一些酷且好玩的「新玩意」,不妨看一看这些开源硬件。
SmartKnob 是一个开源的旋钮,它拥有 240x240 的圆形液晶屏,使用 ESP32 作为处理单元,配合无刷电机提供旋转和力矩反馈。
你可以在不连接电脑的时候把它作为一个解压玩具,随心所欲的把玩它;也可以将它连接到电脑,作为一个 USB 输入设备,用于调整音量等功能。
但需要注意的是,这个项目原本使用的无刷电机已经无处购买,开发者和其他用户正在努力寻找可以替代的新电机。如果你愿意折腾,不妨加入我们一起寻找可用的电机并完善这个项目;当然,你也可以等这个项目进一步完善之后,再动手尝试。
L-ink Card 是知名 Up 主稚晖君的一个开源硬件项目,基于 STM32L051 和 ST25DV,实现了 NFC 模拟多张卡片和电子墨水屏显示。稚晖君开源项目中提供了完整的固件、PCB 设计、外壳的 3D 打印模型以及手机 App,且说明文档使用中文书写,对初学者更为友好。
另外,L-ink Card 还有一个网友修改版本,提供多达四张卡片的模拟(原版为 2 张)。如果你希望模拟更多卡片,不妨尝试 @simonire 完善的版本。当然,因为出自知名 Up 主之手,你也可以在淘宝直接买到套件或者成品。
GitHub 上除去各种各样的开源软件、硬件,还有许多有趣的学习资源。(OKAI 和 Seeing Theory 来自「不求甚解」的推荐。)
OKAI 是一个来自布朗大学的交互式图解人工智能项目,你可以在 GitHub 查看网页源码或者直接访问官网开始学习。它以网页为载体,参照书本的形式,在每一章中引入一个新的概念,并通过交互式动画与互动加深读者对 AI 的理解。OKAI 提供了良好的中文支持,无论在移动设备还是电脑,都拥有不错的阅读体验。
如果你和我一样,是 AI 的门外汉,但又对 AI 充满兴趣,不妨浏览 OKAI 来获取新知。另外,你可以在项目主导人的博客中,了解更多 OKAI 的故事。
和 OKAI 一样,Seeing Theory 也来自布朗大学。它将基础的统计学课程中的基本概念以可视化形式展现,帮助学生学习相关知识。Seeing Theory 还提供了 PDF 版本的下载,但 PDF 仅提供英语,且缺乏交互,更推荐通过网页进行浏览。
如果你需要学习统计学相关课程,Seeing Theory 或许可以帮你学得更轻松愉快。
英语进阶指南是一份系统且丰富的英语学习宝典,将英语学习划分为认知、单词、听力、阅读、口语等五个部分,结合了视频、图片,甚至代码,从多个维度帮助你学习如虎添翼。
英语作为一门语言,学习起来应该是一件比较自然而然的事情,就像我们自然而然地学会汉语那样。
我由衷地希望大家能热爱学习英语这件事情,如果做不到,那就尝试着去发现这件事情的乐趣亦或是收益。请允许我奉上乔布斯的一段话(原话指的是工作,表达的意义却是一致的):
如果你出于这样或那样的原因需要掌握英语,希望这本指南能为你提供一些帮助。
HelloGitHub 是一个分享 GitHub 开源项目的月刊,每月 28 日更新,目前已经更新了 71 期,推荐了 2097 个项目。如果你希望持续了解更多开源项目,感受开源的乐趣,不妨订阅 HelloGitHub。
正所谓「众人拾柴火焰高」,无论你是否会编程,GitHub 都可以是一个宝藏之地。会编程的你可以在这里贡献自己的代码,和来自全世界的开发者一起完善开源世界;不会编程的你可以在这里发现有趣或实用的项目,丰富自己的生活,提高自己的效率。不知道这篇文章中有没有你感兴趣的项目?如果你也有优质的项目想要推荐,不妨在评论区与我们一起分享。