pql等本週Github有趣專案

banq發表於2024-03-09

本週Github有趣的專案、工具和庫

1、Adeus
Adeus 是一款開源可穿戴裝置,它可以捕捉您在現實世界中的所言所聽,然後將其轉錄並儲存到您自己的伺服器上。然後,您可以使用應用程式與 Adeus 聊天,它將掌握您想談或需要談的所有內容--真正個性化的個人人工智慧。

Adeus由3部分組成:

  1. 移動/網路應用程式: 允許使用者透過聊天與其個人人工智慧和資料進行互動的介面。
  2. 硬體裝置:可穿戴裝置,會記錄使用者所說或聽到的一切,並將其傳送到後端進行處理。
  3. Supabase:後端和資料庫,我們將在其中處理和儲存資料,並與大模型進行互動。

2、Dada
Dada 是一個思想實驗。如果我們正在開發一種類似 Rust 的語言,但其感覺更像 Java 或 JavaScript,而不像 C++,那將會如何?這種語言並不希望被用於核心或微型嵌入式裝置,而是願意要求執行時最小化。

如果你使用過 Rust,那麼 Dada 的所有權系統一定不會陌生,但請記住,它們之間存在一些關鍵區別。你甚至可以混合使用這兩種語言編寫的程式碼。

Dada是一種漸進的、以所有權為基礎的語言。讓我們來解讀這兩點:

  • 基於所有權:Dada 利用所有權的概念來確保:(a)記憶體在正確的時間被釋放,無需垃圾回收;(b)並行程式沒有資料競賽。
  • 漸進:Dada 可以讓你從解釋型、動態語言(類似 Python 或 JavaScript)平滑過渡到靜態型別、完全最佳化的語言(類似 Rust)。

3、Ente
完全開源、端到端加密的 Google Photos 和 Apple Photos 的替代品。

您可以將資料儲存在雲端,而無需信任服務提供商。到目前為止,我們已經在此平臺上構建了兩個應用程式:Ente Photos(Apple 和 Google Photos 的替代品)和 Ente Auth(已棄用的 Authy 的 2FA 替代品)。

原始碼和密碼學已經過 Cure53(德國網路安全公司,可以說是世界上最好的)、Symbolic Software(法國密碼學專家)和 Fallible(印度滲透測試公司)的外部審計。

4、puter
瀏覽器中的桌面環境!

5、pdf-debugger
用於除錯 PDF 檔案的工具。

工具可檢查 PDF 檔案的樹結構。它是使用Mozilla PDF.js庫構建的。我對這個專案做了一個分支,只提取了它的核心部分,並將其作為單獨的 npm 包pdf.js-core釋出

6、LiteJQ
liteJQ是一個 SQLite 擴充套件,用 C 編寫,為jqSQLite 提供支援。

SQLite 多年來一直支援 JSON。然而,涉及 JSON 的複雜查詢編寫和理解起來可能會更加麻煩,特別是與 PostgreSQL 等更復雜的系統相比。 liteJQ試圖透過將 jq 的表達能力引入 SQLite 來緩解這一問題。

7、pql
管道式查詢語言。

這 Go 庫將基於管道的查詢語言(受Kusto 查詢語言啟發)編譯為 SQL。它已經過專門測試,可與Clickhouse SQL 方言配合使用,但生成的 SQL 有意與資料庫無關。該儲存庫包含一個 Go 庫和一個用於呼叫該庫的 CLI。

例如,以下表示式:

StormEvents
| where DamageProperty > 5000 and EventType == <font>"Thunderstorm Wind"
| top 3 by DamageProperty

將被編譯為類似於以下的 SQL:

SELECT *
FROM StormEvents
WHERE DamageProperty > 5000 AND EventType = 'Thunderstorm Wind'
ORDER BY DamageProperty DESC
LIMIT 3;

要在 go 程式碼中使用 pql,一個最小的示例可能如下所示

package main

import (
    <font>"github.com/runreveal/pql"
)

func main() {
    sql, err := pql.Compile(
"users | project id, email | limit 5")
    if err != nil {
        panic(err)
    }
    println(sql)
}

執行該程式應該會給出以下輸出

$ go run test.go

WITH <font>"__subquery0" AS (SELECT "id" AS "id", "email" AS "email" FROM "users")
SELECT * FROM
"__subquery0" LIMIT 5;


8、Ascent
Ascent 是一種邏輯程式語言(類似於 Datalog),透過宏嵌入 Rust。

計算圖中所有連線的節點

ascent! {
   relation edge(i32, i32);
   relation path(i32, i32);
   
   path(x, y) <-- edge(x, y);
   path(x, z) <-- edge(x, y), path(y, z);
}

9、omni
在您自己的硬體上簡單部署 Kubernetes。

Omni 允許您從裸機、虛擬機器或雲提供商開始,只需單擊幾下即可建立跨越所有位置的叢集。
您提供機器——邊緣計算、裸機、虛擬機器或在您的雲帳戶中。從 Omni 映像啟動。單擊分配到叢集。就是這樣!

  • Vanilla Kubernetes,在您的機器上,在您的控制之下。
  • 優雅的UI管理和操作
  • 安全保障 – 與您的企業 ID 提供商聯絡
  • 內建高可用的 Kubernetes API 端點
  • 防火牆友好。安全管理邊緣節點
  • 從單節點叢集到最大規模
  • 支援 GPU 和大多數 CSI。

10、ExpenseTracker
Spring Boot +JWT安全 案例原始碼


附送:Python開源有趣專案:

  • Hatchet分散式、容錯的任務佇列。
  • BlendSQL用於編排 SQLite 邏輯和 LLM 推理的統一方言。
  • django-admin-shellx使用 Xterm.js 和 Django Channels 的 Django 管理 Web Shell。
  • Bonito一個輕量級庫,用於為您的資料生成合成指令調整資料集,無需 GPT。
  • FastUI更快地構建更好的 UI。
  • Hancho一個簡單愉快的 Python 構建系統。
  • CadwynFastAPI 中支援生產的社群驅動的現代類似 Stripe 的 API 版本控制。
  • fllect受 Next.js 啟發的純 Python 全棧 Web 應用程式框架。
  • pfl用於私有聯合學習模擬的 Python 框架。
  • EvalPlusEvalPlus 用於對 LLM 合成程式碼進行嚴格評估。
  • Polars_ds_extension適用於一般資料科學用例的 Polars 擴充套件。

相關文章