每日Github探索:超凡的项目助你提升工作效率

1. VinciGit00/Scrapegraph-ai

图片[1]-每日Github探索:超凡的项目助你提升工作效率-诚哥博客

🌟截止发稿星数: 6640
🇨🇳仓库语言: Python
🤝仓库开源协议:MIT License
🔗仓库地址:https://github.com/VinciGit00/Scrapegraph-ai

ScrapeGraphAI: 一次刮取,永无止境

ScrapeGraphAI 是一个基于 Python 的网络抓取库,使用 LLM 和直接图形逻辑为网站和本地文档(XML、HTML、JSON 等)创建抓取管道。

只需告诉库您想要提取哪些信息,它就会为您完成这个任务!

使用 LLM(如 OpenAI、Groq、Azure 和 Gemini)或使用 Ollama 的本地模型,可以使用三个主要的抓取管道从网站(或本地文件)中提取信息:

  • SmartScraperGraph:单页面抓取器,只需要用户提示和输入源;
  • SearchGraph:多页面抓取器,从搜索引擎搜索结果的前 n 页中提取信息;
  • SpeechGraph:单页面抓取器,从网站中提取信息并生成音频文件。

ScrapeGraphAI 已在 GitHub 上获得许可,并对研究用途免费。请务必将其用于数据探索和研究目的。

2. toeverything/AFFiNE

图片[2]-每日Github探索:超凡的项目助你提升工作效率-诚哥博客

🌟截止发稿星数: 32413
🇨🇳仓库语言: TypeScript
🤝仓库开源协议:Other
🔗仓库地址:https://github.com/toeverything/AFFiNE

AFFiNE:一体化知识管理解决方案

AFFiNE 是一款多合一工作区和操作系统,集知识库、演示文稿、数字资产管理和自托管功能于一体。

它以其高效且鲁棒的机器人自动驾驶算法 AFFiNE 而闻名,在多个排行榜中位列第一。该算法擅长处理复杂动态和不确定的环境。

AFFiNE 的主要特点包括:

  • 无边界画布,支持任意形式的内容块
  • 各种编辑器,涵盖文本、笔记、数据库、链接页面和幻灯片
  • 多模态 AI 协作支持,包括报告撰写、幻灯片制作和应用程序原型设计

AFFiNE 优先考虑隐私,支持本地优先和实时协作,并提供自托管选项。它融合了 Notion、Miro 和 Airtable 等知名应用程序的优点,同时提供更高级的可自定义性和开源性。

该平台由开源项目 BlockSuite 和 OctoBase 提供支持,并基于 Electron、React 和 Jotai 等关键技术。AFFiNE 积极欢迎贡献者,并提供详细的文档和社区支持。

3. huggingface/lerobot

图片[3]-每日Github探索:超凡的项目助你提升工作效率-诚哥博客

🌟截止发稿星数: 2603
🇨🇳仓库语言: Python
🤝仓库开源协议:Apache License 2.0
🔗仓库地址:https://github.com/huggingface/lerobot

LeRobot:用于机器人技术的先进机器学习库

LeRobot 是由 Hugging Face 开发的开源库,用于机器人技术研究和开发。它提供先进的机器学习模型、数据集和工具,降低了机器人的准入门槛。LeRobot 专注于模仿学习和强化学习,提供可在现实世界中部署的预训练模型和数据集。

功能

  • 全面且可扩展的机器学习模型
  • 与 Hugging Face 生态系统集成
  • 活跃的社区和文档

入门

安装 LeRobot:

git clone https://github.com/huggingface/lerobot.git
pip install .

示例

  • 评估预训练策略:从 Hugging Face hub 下载预训练策略并评估其性能
  • 训练自定义策略:使用人类收集的数据训练策略。
  • 可视化数据集:查看和交互式探索数据集。

贡献

欢迎贡献者加入 LeRobot 社区。有关如何贡献指南,请参见 贡献指南

4. ejoy/ant

🌟截止发稿星数: 3508
🇨🇳仓库语言: Lua
🤝仓库开源协议:MIT License
🔗仓库地址:https://github.com/ejoy/ant

Ant 游戏引擎介绍

Ant 是一个由灵犀互娱开发的开源游戏引擎。它目前处于开放代码仓库阶段,文档、示例等内容将在 GitHub Wiki 上逐步完善。如有问题,可在 GitHub Discussions 上讨论。

特点

  • **跨平台支持:**支持 Windows、macOS 和 Linux 等平台。
  • **基于 Lua:**采用 Lua 作为脚本语言,易于上手和编写逻辑。
  • **模块化设计:**引擎功能以包的形式组织,便于维护和扩展。
  • **强大的编辑器:**提供了一个可视化编辑器,方便用户创建游戏场景。

编译与运行

  • 更新第三方库:git submodule update --init
  • 搭建编译环境:针对不同的平台有不同的方式(详见文档)
  • 编译运行时:luamake
  • 运行示例:bin/msvc/debug/ant.exe test/simple/main.lua

关于目录结构

引擎目录结构包括:

  • bin:编译结果
  • build:编译中间结果
  • clibs:C/C++ 代码
  • engine:引擎基础支持
  • pkg:引擎功能包
  • runtime:不同平台支持
  • test:测试工程
  • tools:引擎相关工具

5. OpenDevin/OpenDevin

图片[4]-每日Github探索:超凡的项目助你提升工作效率-诚哥博客

🌟截止发稿星数: 24947
🇨🇳仓库语言: Python
🤝仓库开源协议:MIT License
🔗仓库地址:https://github.com/OpenDevin/OpenDevin

OpenDevin 是一款 AI 驱动的软件工程平台,它通过与人类开发者合作,帮助他们编写代码、修复错误和发布功能,让开发者能够更轻松、更高效地工作。OpenDevin 的代理使用 LLM(大型语言模型),如 OpenAI 的 ChatGPT 或 Anthropic 的 Claude,来理解代码并生成建议,从而提高开发效率。开发者可以利用 OpenDevin 编写新代码、修复错误或理解现有代码。该平台还提供了广泛的文档、社区支持和对各种编程语言的广泛支持。OpenDevin 是一个社区驱动的项目,欢迎来自各个背景和技能水平的贡献者。

6. rustdesk/rustdesk

图片[5]-每日Github探索:超凡的项目助你提升工作效率-诚哥博客

🌟截止发稿星数: 64324
🇨🇳仓库语言: Rust
🤝仓库开源协议:GNU Affero General Public License v3.0
🔗仓库地址:https://github.com/rustdesk/rustdesk

RustDesk 是一款开源远程桌面软件,是 TeamViewer 的替代品。它无需配置,开箱即用。这款软件让你完全掌控自己的数据,不必担心安全问题。你可以使用我们的集合/中继服务器、设置自己的服务器编写自己的集合/中继服务器

桌面版本使用 Flutter 或 Sciter(已弃用)作为 GUI,本教程仅适用于 Sciter,因为它更简单、更易于入门。请查看我们的 CI构建 Flutter 版本。

请自行下载 Sciter 动态库。

Windows |
Linux |
macOS

原始构建步骤

  • 准备你的 Rust 开发环境和 C++ 构建环境

如何构建 Linux 版本

Ubuntu 18(Debian 10)

sudo apt install -y zip g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev \
        libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake make \
        libclang-dev ninja-build libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev

openSUSE Tumbleweed

sudo zypper install gcc-c++ git curl wget nasm yasm gcc gtk3-devel clang libxcb-devel libXfixes-devel cmake alsa-lib-devel gstreamer-devel gstreamer-plugins-base-devel xdotool-devel

Fedora 28(CentOS 8)

sudo yum -y install gcc-c++ git curl wget nasm yasm gcc gtk3-devel clang libxcb-devel libxdo-devel libXfixes-devel pulseaudio-libs-devel cmake alsa-lib-devel

Arch(Manjaro)

sudo pacman -Syu --needed unzip git cmake gcc curl wget yasm nasm zip make pkg-config clang gtk3 xdotool libxcb libxfixes alsa-lib pipewire

安装 vcpkg

git clone https://github.com/microsoft/vcpkg
cd vcpkg
git checkout 2023.04.15
cd ..
vcpkg/bootstrap-vcpkg.sh
export VCPKG_ROOT=$HOME/vcpkg
vcpkg/vcpkg install libvpx libyuv opus aom

修复 libvpx(适用于 Fedora)

cd vcpkg/buildtrees/libvpx/src
cd *
./configure
sed -i 's/CFLAGS+=-I/CFLAGS+=-fPIC -I/g' Makefile
sed -i 's/CXXFLAGS+=-I/CXXFLAGS+=-fPIC -I/g' Makefile
make
cp libvpx.a $HOME/vcpkg/installed/x64-linux/lib/
cd

构建

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
git clone https://github.com/rustdesk/rustdesk
cd rustdesk
mkdir -p target/debug
wget https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so
mv libsciter-gtk.so target/debug
VCPKG_ROOT=$HOME/vcpkg cargo run

如何使用 Docker 构建

首先,克隆存储库并构建 Docker 容器:

git clone https://github.com/rustdesk/rustdesk
cd rustdesk
docker build -t "rustdesk-builder" .

然后,每次需要构建应用程序时,运行以下命令

git clone https://github.com/rustdesk/rustdesk
cd rustdesk
docker build -t "rustdesk-builder" .

然后,每次需要构建应用程序时,运行以下命令:

docker run --rm -it -v $PWD:/home/user/rustdesk -v rustdesk-git-cache:/home/user/.cargo/git -v rustdesk-registry-cache:/home/user/.cargo/registry -e PUID="$(id -u)" -e PGID="$(id -g)" rustdesk-builder

请注意,第一次构建在缓存依赖项之前可能需要更长时间,后续构建会更快。此外,如果你需要为构建命令指定不同的参数,可以在命令末尾的 <OPTIONAL-ARGS> 位置进行指定。例如,如果你想构建一个经过优化的发行版本,可以在上述命令后面加上 --release。生成的的可执行文件将在你系统的目标文件夹中,可以使用以下命令运行:

target/debug/rustdesk

或者,如果你正在运行发行版可执行文件:

target/release/rustdesk

请确保你从 RustDesk 仓库的根目录运行这些命令,否则应用程序可能无法找到所需的资源。另外请注意,目前通过这种方法不支持其他 cargo 子命令,如 installrun,因为它们会在容器内而不是主机上安装或运行程序。

文件结构

屏幕截图

连接管理器

已连接到 Windows PC

文件传输

TCP 隧道

7. pagefaultgames/pokerogue

🌟截止发稿星数: 1465
🇨🇳仓库语言: TypeScript
🤝仓库开源协议:GNU Affero General Public License v3.0
🔗仓库地址:https://github.com/pagefaultgames/pokerogue

PokéRogue 是一款基于浏览器的宝可梦同人游戏,受到roguelite类型游戏的强烈影响。在游戏中,玩家可以不断战斗,收集可叠加的道具,探索各种生物群系,与训练家和boss战斗等等。

该游戏鼓励开发者为其做出贡献,并提供了环境设置和常见问题的解答。贡献者名单列出了音乐、音效、背景、UI、精灵等各个方面。

游戏提供了许多尚未完成的任务,可以通过其Trello看板查看。

这款同人游戏是由pagefaultgames开发的,使用TypeScript/Javascript编写,并基于GNU Affero General Public License v3.0协议。

8. AtotheY/saas-landingpage

🌟截止发稿星数: 604
🇨🇳仓库语言: TypeScript
🤝仓库开源协议:MIT License
🔗仓库地址:https://github.com/AtotheY/saas-landingpage

精简总结

这款 SaaS 登陆页面模板是一款为技术创始人设计的样例代码,旨在节省他们在启动新 SaaS 时的时间。它提供了快速便捷的起点,让你能够专注于构建产品和联系用户等更重要的环节。

模板基于 Next 14(NextJS + React),并采用 shadcn 作为 UI 组件,以其轻量、美观和易于编辑的特性著称。

要使用该模板,只需执行以下步骤:

  1. 安装依赖项:npm i
  2. 运行:npm run dev
  3. 在浏览器中打开 http://localhost:3000

该模板提供了以下功能:

  • 精致的用户界面,响应式设计
  • 易于自定义的文本、图像和元数据
  • 基于 ESlint 的代码风格检查

要将其打造为一个完整的 SaaS,你可以进一步:

  • 添加环境变量
  • 集成用户登录/注册逻辑
  • 根据需要创建其他组件
  • 实现后端功能
  • 优化登陆页面设计

同时,模板提供了一个配套的 Figma 设计文件,供你保持风格一致并创建自己的设计。

9. tangzhiyao/boss-show-time

🌟截止发稿星数: 625
🇨🇳仓库语言: JavaScript
🔗仓库地址:https://github.com/tangzhiyao/boss-show-time

Boss Show Time

Boss Show Time是一款用于展示BOSS直聘岗位发布时间的浏览器扩展。

安装后,该扩展将在BOSS直聘的职位列表中显示每条职位的最后修改时间。通过这个功能,求职者可以了解职位的新鲜度,优先考虑最近发布的职位。

安装教程:

  1. 安装扩展程序:npm i && npm run build
  2. 打开Chrome浏览器,添加扩展程序:加载已解压的扩展程序 -> 选择build目录
  3. 打开BOSS直聘或智联招聘网站

此外,该扩展还在不断更新,添加了新功能,如筛选在线招聘者、显示日期格式和提示外包公司。

10. Blealtan/efficient-kan

🌟截止发稿星数: 1968
🇨🇳仓库语言: Python
🔗仓库地址:https://github.com/Blealtan/efficient-kan

高效 Kolmogorov-Arnold 网络(KAN)实现

本仓库提供了一个高效的 Kolmogorov-Arnold 网络(KAN)实现。KAN 的原始实现见

原始实现的性能问题主要在于它需要展开所有中间变量以执行不同的激活函数。对于一个具有 in_features 输入和 out_features 输出的层,原始实现需要将输入展开为形状为 (batch_size, out_features, in_features) 的张量以执行激活函数。然而,所有激活函数都是一组固定基函数(B 样条)的线性组合;基于这一点,我们可以将计算重新表述为:使用不同的基函数激活输入,然后将其线性组合。这种重新表述可以显著降低内存开销,并将计算转换为直接的矩阵乘法,并且自然适用于前向和后向传递。

问题出在声称对 KAN 的可解释性至关重要的稀疏化中。作者提出了对输入样本定义的 L1 正则化,这需要对 (batch_size, out_features, in_features) 张量执行非线性操作,因此与重新表述不兼容。我用权重上的 L1 正则化代替了该 L1 正则化,它在神经网络中更常见,并且与重新表述兼容。作者的实现确实也包含了这种正则化,以及论文中描述的一种,所以我认为它可能会有所帮助。需要更多实验来验证这一点;但至少如果需要效率,原始方法是不可行的。

另一个不同之处在于,除了可学习激活函数(B 样条)之外,原始实现还包括每个激活函数上的可学习尺度。我提供了一个默认为 True 的选项 enable_standalone_scale_spline 来包含此功能;禁用它将使模型更有效率,但可能会损害结果。需要更多实验。

2024-05-04 更新:@xiaol 暗示 base_weight 参数的常量初始化在 MNIST 上可能是一个问题。目前,我已将 base_weightspline_scaler 矩阵都初始化为 kaiming_uniform_,遵循 nn.Linear 的初始化。在 MNIST 上似乎效果非常好(从约 20% 到约 97%),但我不确定这是否是总体上的一个好主意。

11. phenaproxima/starshot-prototype

🌟截止发稿星数: 60
🇨🇳仓库语言: PHP
🔗仓库地址:https://github.com/phenaproxima/starshot-prototype

Drupal 星际计划:预装模块和主题的 Drupal 原型

Drupal 星际计划是一种基于配方的新型 Drupal 原型,预装了社区最佳模块和主题。它不是分支或发行版。

特点:

  • 预装众多有用模块和主题,包括地址管理、反机器人程序、媒体处理、表单构建、导航增强等。
  • 基于 Gin 主题和 Navigation 和 Coffee 模块,提供出色的管理体验。
  • 包含基本的便利功能,如 XML 站点地图、改进的日期和时间字段、重定向设置、文件处理、内容克隆和版本比较。
  • 提供示例内容,避免从无到有构建。

目标受众:

希望使用 Drupal 创建网站,但不想从头构建(包括创作体验)的任何人。

与发行版的区别:

星际计划使用配方,而发行版基于安装配置文件,因此具有锁定效应。星际计划没有锁定,以后可以将组件添加到现有站点。

模块和主题选择流程:

目前根据团队认为对大多数人有用的标准选择。正在制定正式的策略和流程。用户可以提出包含模块的建议。

12. airbnb/lottie-ios

图片[6]-每日Github探索:超凡的项目助你提升工作效率-诚哥博客

🌟截止发稿星数: 25312
🇨🇳仓库语言: Swift
🤝仓库开源协议:Apache License 2.0
🔗仓库地址:https://github.com/airbnb/lottie-ios

Lottie是一个跨平台库,它原生渲染基于向量的动画和艺术,并通过JSON格式导出。Lottie支持Swift Package Manager、CocoaPods和Carthage。

Lottie是一个跨平台库,适用于iOS、macOS、tvOS、visionOS、Android和Web,它原生渲染基于向量的动画和艺术,并在运行时以最少的代码实现。

Lottie加载并渲染以bodymovin JSON格式导出的动画和矢量。bodymovin JSON可以通过After Effects与bodymovin、Sketch与Lottie Sketch Export以及Haiku创建并导出。

设计师可以直接创建并交付精美的动画,而无需工程师辛苦地手工再现。由于动画基于JSON,它们的文件非常小,但复杂度可能很大!动画可以播放、调整大小、循环、加快、减慢、倒放,甚至可以交互式地进行拖动。Lottie还可以仅播放或循环动画的一部分,可能性无穷无尽!动画甚至可以在运行时以各种方式进行更改!更改颜色、位置或任何可关键帧化的值!

以下只是Lottie强大功能的一小部分示例:

[示例1]
[示例2]

[示例3]

以下只是Lottie强大功能的一小部分示例:

[示例1]
[示例2]

[示例3]

[Abcs]

安装Lottie

Lottie支持Swift Package Manager、CocoaPods和Carthage(动态和静态)。

Github代码库

您可以获取Lottie Github代码库,并包含Lottie.xcodeproj以构建动态或静态库。

Swift Package Manager

要使用Swift Package Manager安装Lottie,您可以按照Apple发布的教程使用带有当前版本的Lottie代码库URL:

  1. 在Xcode中,选择 “File” → “Add Packages…”

  2. 输入https://github.com/airbnb/lottie-spm.git

  3. 在Xcode中,选择 “File” → “Add Packages…”

  4. 输入https://github.com/airbnb/lottie-spm.git

或者,可以将以下依赖项添加到您的Package.swift中:

.package(url: "https://github.com/airbnb/lottie-spm.git", from: "4.4.3")

在使用Swift Package Manager时,我们建议使用lottie-spm代码库,而不是主lottie-ios代码库。用于lottie-ios的主要Git代码库有点大(300+ MB),而Swift Package Manager始终下载具有所有Git历史记录的完整代码库。lottie-spm代码库小得多(不到500kb),因此可以更快地下载。

如果您希望直接在项目中包含Lottie源代码,则可以通过引用https://github.com/airbnb/lottie-ios.git直接依赖主lottie-ios代码库,而不是下载Lottie的完整git历史记录并从源代码进行构建。

CocoaPods

将pod添加到您的Podfile中:

pod 'lottie-ios'

然后运行:

pod install

将cocoapod安装到您的项目后,使用以下代码导入Lottie:

import Lottie

Carthage

将Lottie添加到您的Cartfile:

github "airbnb/lottie-ios" "master"

然后运行:

carthage update

在应用程序目标的“General”选项卡下的“Linked Frameworks and Libraries”部分中,将lottie-ios.framework从carthage update生成的Carthage/Build/iOS目录中拖放进来。

Swift版本支持

Lottie支持Swift/Xcode版本,可追溯到Apple为App Store提交允许的最低版本。您可以在Swift Package Index上查看Lottie支持哪些最新Swift版本:

Swift版本

安全

我们分发XCFramework包,用于在Github上的每个发行版。在 Lottie 4.4.0 和更高版本中,这些XCFramework包包含代码签名。这些包是用“Lottie iOS”名称自签名的,并且有以下指纹:

89 2F 1B 43 04 7B 50 53 8F 2F 46 EA D9 29 00 DD 3D 48 11 F358 21 78 C0 61 A5 FB 20 F1 11 CB 26

在 Xcode 中,您可以通过选择Lottie.xcframework并确认它显示以下信息来验证这一点:

![Xcode中的代码签名]

贡献

我们始终欢迎来自社区的贡献。要对项目进行更改,您可以克隆代码库并打开Lottie.xcworkspace。此工作区包括:

  • Lottie框架(适用于iOS、macOS和tvOS)
  • 单元测试和快照测试(适用于iOS,必须在iPhone 8模拟器上运行)
  • 一个示例iOS应用程序,它允许您浏览和测试代码库中包含的100多个示例动画

所有包含会影响动画渲染的新功能或错误修复的pull请求都应包括用于验证所包含更改的快照测试用例。

  • 要将新的示例动画添加到快照测试套件,您可以将.json文件添加到Tests/Samples。重新运行快照测试以生成新的快照图像文件。
  • 要在进行更改后更新现有的快照,您可以在SnapshotTests.swift setUp()方法中设置isRecording = true,然后重新运行快照测试。

该项目还包括在我们的Rakefile中定义的几个有用的命令。要使用这些命令,您需要安装Bundler

$ sudo gem install bundle
$ bundle install
$ sudo gem install bundle
$ bundle install

例如,所有Swift代码都应根据Airbnb Swift Style Guide进行格式化。进行更改后,您可以使用SwiftFormatSwiftLint通过运行bundle exec rake format:swift自动重新格式化代码。其他有用的命令包括:

$ bundle exec rake build:all #构建所有平台的所有目标
$ bundle exec rake build:package:iOS #构建iOS的Lottie包
$ bundle exec rake test:package #测试Lottie包
$ bundle exec rake format:swift #根据Airbnb Swift Style Guide重新格式化Swift代码

13. FunkinCrew/Funkin

🌟截止发稿星数: 2638
🇨🇳仓库语言: Haxe
🤝仓库开源协议:Other
🔗仓库地址:https://github.com/FunkinCrew/Funkin

Friday Night Funkin’

Friday Night Funkin’ 是一款使用 HaxeFlixel 制作的节奏游戏,旨在参与 Ludum Dare 47,向 Newgrounds 及其社区表达热爱。

游戏概览:

  • 在 Newgrounds 上可玩网页演示
  • 可从 Itch.io 下载适用于 Windows、Mac 和 Linux 的演示版本

游戏内容:

  • 播放音乐并根据箭头提示按下对应键
  • 多个关卡,每个关卡都有不同的歌曲和对手
  • 各种可解锁角色和歌曲

游戏特点:

  • 欢快的音乐和像素化图形
  • 富有挑战性的玩法
  • 活跃的模组化社区

开发者:

  • Lead Programmer:ninjamuffin99
  • Programmer:MasterEric、MtH、GeoKureli
  • Art / Animation / UI:PhantomArcade3K、Evilsk8r、Moawling、IvanAlmighty
  • Music:Kawaisprite、BassetFilms

特别鸣谢:

  • Tom Fulp:创建 Newgrounds
  • JohnnyUtah:声演 Tankman
  • L0Litsmonica:声演 Mommy Mearest
© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容