「HelloGitHub」第97号

興味は最良の教師です。HelloGitHubプログラミングに興味を持たせます。

導入

HelloGitHub は、GitHub 上で興味深いエントリーレベルのオープンソース プロジェクトを共有しています。

github.com/521xueweihan/HelloGitHub

Python、Java、Go、C/C++、Swiftなど、さまざまなプログラミング言語を網羅した実践プロジェクト、入門チュートリアル、ブラックテクノロジー、オープンソース書籍、大手メーカーのオープンソースプロジェクトなどが揃っています。短期間でオープンソースの魅力を感じ、プログラミングに興味を持ちましょう!


今回の内容は以下の通り|毎月28日更新

Cプロジェクト

1. freeswitch : キャリアグレードのオープンソース電話プラットフォーム。これは、SIP や WebRTC などの複数の通信プロトコルをサポートするオープンソースの通信フレームワークであり、多目的ソフト スイッチとして、企業の電話システム、仮想コールセンター、ビデオ会議などのさまざまな音声およびメッセージング サービスの作成に使用できます。サービスなど。

2. NetHack : 長い歴史を持つローグライク ゲーム。これは古典的なローグライク スタンドアロン ゲームです。プレイヤーはダンジョン探索者となって、謎のイェンドールのネックレスを見つけます。ゲームのインターフェイスは ASCII 文字で構成されており、自由度が高く、難易度が高く、ランダムなマップ生成と永続的な死亡が特徴です。

3. rt-thread : 小さくて美しい IoT オペレーティング システム。これは中国人によって開発されたオープンソースのモノのインターネット オペレーティング システムであり、優れたカスタマイズ性と拡張性を備えています。 ARM Cortex-M0 チップ上の非常に小さなコアから、中型の ARM Cortex-M3/4/7 システム、さらにはマルチコア 64 ビット ARM Cortex-A、MIPS32/64、およびさまざまなアーキテクチャのその他のプロセッサでも実行できます。 。また、開発者が組み込みシステム製品を迅速に構築できるように、機能豊富なコンポーネントとソフトウェア パッケージも提供します。@Arkimidongからの共有

C# プロジェクト

4. g-helper : ASUS Ultron Center の軽量代替品。このプロジェクトは、ASUS Notebook Ultron Control Center (ゲームノートブック制御ソフトウェア) のオープンソース代替品です。シンプルなインターフェイスとシステム リソースの使用量が非常に低いという特徴があり、グラフィックス カード モードのシームレスな切り替え、画面のリフレッシュ レート、ファン カーブ、消費電力、キーボードの照明などの機能をサポートします。

5. WingetUI : インターフェイスを備えた Windows パッケージ マネージャー。このプロジェクトは、Winget、Scoop、Pip、NPM、.NET Tool など、Windows で一般的に使用されるコマンド ライン パッケージ管理ツール用に設計されたユーザー インターフェイスです。フレンドリーなインターフェイス、美しいデザインがあり、中国語をサポートしているため、パッケージ マネージャーで公開されているソフトウェアや、ブラウザ、PDF リーダーなどのその他の日常的なアプリケーションを簡単にダウンロード、インストール、更新、アンインストールできます。

C++ プロジェクト

6. cppinsights : コンパイラの観点から C++ コードを観察します。 Clang をベースとした開発ツールです。ソースコードをコンパイラの導出結果に変換することができ、コンパイラの観点からコードの内部の仕組みを深く理解することができます。抽象構文ツリー (AST) のデモンストレーションや説明に使用できます。 ) および C++ 言語の新機能。

7. Stellarium : オープンソースの天文シミュレーション ソフトウェア。このプロジェクトは、星、星座、惑星、彗星、その他の天体を含む、頭上の星空のシーンを正確にシミュレート/表示することができ、時間や場所の選択などの機能をサポートしています。 、観察のために拡大し、星座を示します。Windows、Linux、macOS、iOS、Android などの複数のプラットフォーム用のクライアントを提供します。

8. VideoPipe : クロスプラットフォームのビデオ構造化および分析フレームワーク。これはビデオ分析と構造化のためのフレームワークであり、C++ で書かれており、依存関係がほとんどなく、使いやすいです。これは、各ノードが互いに独立しており、組み合わせてさまざまなタイプのビデオ分析パイプラインを構築できるパイプラインのようなもので、ビデオ構造化、画像検索、顔認識、セキュリティ分野での行動分析などのシナリオに適しています。交通事故の検出など)。@zhouzhiからの共有

ゴープロジェクト

9.フリーズ: コードイメージを生成するためのターミナルツール。このプロジェクトは、コード スニペットとターミナル出力を PNG、SVG、WebP 形式の画像に変換できます。Go 言語を使用して開発されており、1 つのコマンドで画像を生成できるのが特徴です。インタラクティブモードによるカスタマイズされた画像。

# macOS or Linux
brew install charmbracelet/tap/freeze

# Arch Linux (btw)
pacman -S freeze

# Nix
nix-env -iA nixpkgs.charm-freeze

10. jaeger : オープンソースの分散リンク追跡プラットフォーム。このプロジェクトは、Dapper と、Uber によって作成されオープンソース化された分散型コール チェーン追跡プラットフォームである OpenZipkin からインスピレーションを受けています。分散アプリケーション (マイクロサービス) の監視と診断に使用でき、その機能には、複数言語のサポート、フルリンク トレース、コンテキスト配信、パフォーマンス インジケーター、視覚化およびアラームなどが含まれます。@太卡からの共有

11. opengist : GitHub Gist に代わるオープンソース。プロジェクトはコードまたはテキストのフラグメントを Git リポジトリに保存し、ユーザーは GitHub の Gist サービスと同様に、Git コマンドまたは Web を通じてコン​​テンツを表示および変更できます。これはオープンソースで自己ホストされており、パブリック/プライベート スニペットの作成、構文の強調表示、コード検索、他の Web サイトへの埋め込み、および変更履歴をサポートしています。

Javaプロジェクト

12. CompreFace : 無料のオープンソースの顔認識システム。このプロジェクトは、顔認識、検出、検証、頭姿勢検出、性別および年齢認識のための REST API サービスを提供します。これらは、機械学習の知識がなくても、あらゆるシステムに簡単に統合できます。バックエンドは Java で書かれており、顔認識は FaceNet と InsightFace に基づいて実装されており、Docker デプロイメントもサポートしています。

13. fdroidclient : 無料のオープンソース Android アプリケーション ストア。このプロジェクトは、さまざまなオープンソース Android ソフトウェア (FOSS) を収集することに特化したアプリケーション ストアである F-Droid の Android クライアントです。それらのほとんどは無料で広告なしのアプリケーションです。リソースの読み込みが遅い場合は、ミラー ソースを設定することで問題を解決できます。

JavaScript プロジェクト

14. cmdk : 高速でスタイルのないコマンド メニュー React コンポーネント。このプロジェクトは、開発者が ⌘K ショートカット キーによって呼び出される対話型メニューに似た直感的で機能豊富なコマンド メニューを簡単に実装できるようにすることで、ユーザーの対話型エクスペリエンスを向上させ、さまざまな Web アプリケーションに適したものにします。 @Daaihang Wongによって共有されました

import { Command } from 'cmdk'

const CommandMenu = () => {
  return (
    <Command label="Command Menu">
      <Command.Input />
      <Command.List>
        <Command.Empty>No results found.</Command.Empty>

        <Command.Group heading="Letters">
          <Command.Item>a</Command.Item>
          <Command.Item>b</Command.Item>
          <Command.Separator />
          <Command.Item>c</Command.Item>
        </Command.Group>

        <Command.Item>Apple</Command.Item>
      </Command.List>
    </Command>
  )
}

15.概要: オープンソースのドキュメントとチームのナレッジベース管理ツール。 React と Node.js で開発されたオンライン ドキュメント編集およびコラボレーション ツールです。美しいインターフェイス、豊富な機能を備え、Markdown と互換性があり、中国語と Docker のデプロイメントをサポートしています。さらに、Windows、macOS、iOS、Android 用のクライアントも提供されており、プライベート Wiki として、または中小企業向けの内部ドキュメントおよびナレッジ ベース プラットフォームとして使用できます。

16. Photo-Sphere-Viewer : 360° 全天球パノラマを表示するための JavaScript ライブラリ。 Three.js をベースに開発されたパノラマ写真ビューアで、フレンドリーなインタラクションと豊富な機能を提供します。 2:1 パノラマ、六面体パノラマ、パノラマ タイル、表示テキスト、ビデオ パノラマなど、さまざまなパノラマ形式と機能をサポートしています。@wanzijシェアしたもの

17. Strapi : 世界をリードするオープンソースのヘッドレス CMS。これは、JavaScript/TypeScript で開発された完全に無料のヘッドレス コンテンツ管理システムです。すぐに使える API と使いやすい管理パネルがあり、権限管理、デフォルトのセキュリティ、SEO への配慮などの機能が備わっています。 Strapi は、現在 GitHub 上で最も人気のあるオープンソース コンテンツ管理システムの 1 つであり、多くのフォーチュン 500 企業に選ばれる CMS となっています。@greatYeシェアしたもの

18. tailwind-landing-page-template : 無料のオープンソースのランディング ページ テンプレート。このプロジェクトは、TailwindCSS、React、Next.js に基づいて構築されたランディング ページ テンプレートであり、美しいインターフェイス、シンプルなコード、オンライン デザインを備えており、会社のホームページやイベントのランディング ページなどを迅速に作成するのに適しています。

git clone 项目
yarn install
yarn dev
# http://localhost:3000

Kotlin プロジェクト

19. breezy-weather : シンプルな Android 天気アプリケーション。これは、マテリアル デザイン デザイン言語を使用した、デザインに重点を置いた天気アプリです。シンプルでクリーン、広告なし、無料、中国語をサポートしており、今後 1 時間の降水量、大気質、時間予報、ライブ天気、花粉、湿度などのさまざまな気象データを表示できます。

Pythonプロジェクト

20.dangerzone : 信頼できないドキュメント安全な PDF に変換するツール。これは、ドキュメントのセキュリティを確保するオープンソース プロジェクトであり、危険性のある PDF ファイル、オフィス ドキュメント、または画像 (ソース不明、電子メールの添付ファイル) を隔離されたサンドボックス環境で変換して、安全な PDF ファイルを生成できます。

21. great-tables : Python を使用して美しいテーブルを作成します。この Python ライブラリを使用すると、便利で美しいテーブルを作成できます。これは、Python 開発者がテーブル ヘッダー、テーブル フッター、行ラベル (スタブ)、スパナ ラベル (スパナ ラベル) などのさまざまなテーブル パーツを組み合わせて美しいデータ テーブルを簡単に作成できるようにするテーブル コンポーネントのセットを提供します。 @Ted LIによって共有されました

from great_tables import GT
from great_tables.data import sp500

# Define the start and end dates for the data range
start_date = "2010-06-07"
end_date = "2010-06-14"

# Filter sp500 using Pandas to dates between `start_date` and `end_date`
sp500_mini = sp500[(sp500["date"] >= start_date) & (sp500["date"] <= end_date)]

# Create a display table based on the `sp500_mini` table data
(
    GT(sp500_mini)
    .tab_header(title="S&P 500", subtitle=f"{start_date} to {end_date}")
    .fmt_currency(columns=["open", "high", "low", "close"])
    .fmt_date(columns="date", date_style="wd_m_day_year")
    .fmt_number(columns="volume", compact=True)
    .cols_hide(columns="adj_close")
)

22. python-miio : Xiaomi スマート家電を制御するための Python ライブラリ。このプロジェクトは、Xiaomi の miIO および MIoT プロトコルを使用してデバイスを制御するために使用できる Python ライブラリとコマンド ライン ツールを提供します。これを使用すると、ユーザーは掃除ロボット、電球、空気清浄機などを含む Xiaomi スマート デバイスと簡単に通信したり遠隔制御したりできるため、DIY スマート ホーム システムを好む開発者に非常に適しています。

23. undetected-chromedriver : クロール防止検出をバイパスする Python ライブラリ。これは、ブラウザーの自動化によってボット対策メカニズムがトリガーされるのを防ぐために特別に設計された、最適化された Selenium WebDriver パッチです。ブラウザの特性 (フィンガープリント) を隠すことができ、Python のサードパーティ ライブラリと同様に非常に便利です。

import undetected_chromedriver as uc
driver = uc.Chrome(headless=True,use_subprocess=False)
driver.get('https://nowsecure.nl')
driver.save_screenshot('nowsecure.png')

24. wereader : 包括的な WeChat の読み取りおよびメモ作成アシスタント。これは、PySide6 に基づいて作成された WeChat 読書デスクトップ クライアントです。本を読む機能をサポートするだけでなく、読書メモ、人気の下線、その他のコンテンツをすべて表示できるメモ モードも備えています。

Rustプロジェクト

25. grex : 正規表現を自動生成するコマンドラインツール。正規表現の書き方がわからないときに役立つかもしれません。このプロジェクトは Rust 言語で開発されたコマンド ライン ツールで、ユーザーが提供したサンプル コンテンツに基づいて対応する正規表現を返すことができ、ライブラリまたはコマンド ライン ツールとして使用できます。@size_t共有しました

26. sqlx : 強力な Rust 非同期 SQL ツールキット。これは真の非同期 SQL ライブラリであり、完全に Rust 言語で開発され、PostgreSQL、MySQL、MariaDB、および SQLite データベースをサポートしています。クエリステートメントのコンパイル時チェックやステートメントの自動キャッシュなどの機能を提供し、Rust 言語と SQL データベース間の対話を簡単かつ効率的にします。

use sqlx::postgres::PgPoolOptions;
// use sqlx::mysql::MySqlPoolOptions;
// etc.

#[async_std::main] // Requires the `attributes` feature of `async-std`
// or #[tokio::main]
// or #[actix_web::main]
async fn main() -> Result<(), sqlx::Error> {
    // Create a connection pool
    //  for MySQL/MariaDB, use MySqlPoolOptions::new()
    //  for SQLite, use SqlitePoolOptions::new()
    //  etc.
    let pool = PgPoolOptions::new()
        .max_connections(5)
        .connect("postgres://postgres:password@localhost/test").await?;

    // Make a simple query to return the given parameter (use a question mark `?` instead of `$1` for MySQL/MariaDB)
    let row: (i64,) = sqlx::query_as("SELECT $1")
        .bind(150_i64)
        .fetch_one(&pool).await?;

    assert_eq!(row.0, 150);

    Ok(())
}

27. zero-to-production : Rust を使用してメール通信サービスをゼロから構築します。このプロジェクトは、書籍「Zero To Production In Rust」のサポート プロジェクト ソース コードのみであり、書籍は提供されません。この本では、Rust を使用して電子メール通信サービスをゼロから構築する方法を紹介します。これには、開発環境の構成、継続的インテグレーションのプロセス、バックエンド API の開発、エラー処理、デプロイメントの全プロセスが含まれます。

スウィフトプロジェクト

28. pika : macOS のネイティブ カラー ピッカー。これは macOS 用に特別に設計された色選択ツールで、無料で高速かつ使いやすく、画面上の色の値をすばやく見つけることができます。

29. remembers-menubar : ミニマルな macOS メニュー バー リマインダー ツール。これは、SwiftUI を使用して開発された小さなツールで、macOS メニュー バー上の To Do 項目を表示/リマインドすることができます。サイズは小さく、操作はシンプルで、起動、多言語 (中国語を含む)、メニュー バーの表示数、ショートカット キーなどの機能をサポートしています。

他の

30. cat-catch : オープンソースのメディア スニッフィング ブラウザ プラグイン。 「Cat's Claw」と呼ばれるこのブラウザ プラグインは、現在のページ上の音楽およびビデオ リソースのダウンロード アドレスを一覧表示するのに役立ちます。

31.コンテナー: さまざまなオープンソース ソフトウェアのコンテナー イメージのコレクション。このプロジェクトは、BitNami によって保守およびオープンソース化されている Docker コンテナのコレクションであり、さまざまなオープン ソース ソフトウェア、システム、Web アプリケーションが含まれます。これらは最適化され、脆弱性がスキャンされているため、Docker を使用したワンクリックのデプロイが可能になり、面倒なインストールや構成プロセスを必要とせずにアプリケーションを簡単にデプロイできるようになります。

docker pull bitnami/APP
docker pull bitnami/APP:[TAG]

32. ServiceLogos : とてもかわいいロゴのコレクション。プログラミング言語、フレームワーク、ツール、主要ソーシャルメディア™️の商標をはじめ、椹月が制作した様々なロゴを美しくかわいらしく保管する倉庫です。

33. ungoogled-chromium : より純粋な Chrome ブラウザ。このプロジェクトは、Chrome ブラウザから Google サービスを削除し、ブラウザの完全な機能を保持するブラウザです。

34. web-activity-time-tracker : オンライン アクティビティ時間を追跡するブラウザ プラグイン。これは、さまざまな Web サイトでの閲覧時間を記録し、直感的な統計を提供する、広告なしのオープンソース ブラウザ プラグインです。日別時間別の閲覧時間のカウント、干渉するWebサイトのフィルタリング、データのエクスポートなどの機能をサポートします。

オープンソースの書籍

35. how-to-learn-robotics : ロボット工学の独学ガイド。このガイドは、ロボット工学を学ぶ方法を専門外の学生に教えるために設計されています。本書には、読者が徐々に優秀なロボット工学者に成長するための必須の知識、推奨される入門書、実践的なプロジェクト、および高度なメソッドが含まれています。

36. llm-universe : 「大規模モデルアプリケーション開発の実践学習」。このプロジェクトは、初心者開発者向けに設計された大規模なモデル アプリケーション開発チュートリアルです。内容は、大規模モデルの概念の紹介、大規模モデル API の呼び出し方法、ナレッジ ベースの構築、RAG (Retrieval-Augmented Generation) アプリケーションの構築と評価方法などです。

機械学習

37. langchain : LLM アプリケーションを構築するためのフレームワーク。 LLM は、ビッグ データに基づいて事前トレーニングされた大規模な深層学習モデルであり、このプロジェクトにより、LLM は再トレーニングせずに新しいデータ セットにアクセスできます。コンテキストソースの接続機能やLLMに基づく推論機能など、LLMアプリケーションの開発に必要なさまざまなモジュールを提供しており、チャットボット、ナレッジベース、情報抽出など、LLMに対応したさまざまなアプリケーションの開発が容易になります。

38. LLaMA-Factory : LLM を微調整するために特別に設計されたフレームワーク。これは、大規模な言語モデルの微調整を容易にするオープンソース プロジェクトであり、LLaMA、Mistral、ChatGLM などの複数のモデルに加え、増分事前トレーニング、報酬モデル トレーニング、精度レベルなどの機能もサポートしています。高度なアルゴリズムと実用的な微調整テクニックを導入し、ユーザーが実験の進行状況を追跡しやすくするための便利な監視ツールを提供します。

39. ollam : さまざまな LLM をローカルで実行するためのツール。これは Go 言語で書かれたツールで、1 つのコマンドで大規模な言語モデルをローカルにインストール、起動、管理するために使用されます。Llama 3、Gemma、Mistral などの大規模なモデルをサポートしており、Windows に適しています。 macOS および Linux オペレーティング システム。

40. vanna : SQL データベースとチャットします。このプロジェクトでは、LLM+RAG+ データベース テクノロジを使用して、ユーザーが自然言語を通じて SQL データベースにクエリを実行し、生成された SQL を使用して質問に答えることができるようにします。

やっと

オープンソース プロジェクトの共有に参加した友人たちのおかげで、より多くのオープンソース愛好家が HelloGitHub に来て、オープンソース プロジェクトを自薦/推薦できるようになります。 GitHub で興味深いプロジェクトを見つけたら、ここをクリックしてみんなと共有してください。

この号に掲載されているオープンソース プロジェクトで興味のあるものはありますか?もしそうなら、メッセージを残して知らせてください~まだ十分に見ていない場合は、クリックして以前の問題を読むことができます。

この号の内容が良いと思ったら、ぜひ「いいね」とシェアをお願いします❤️

私はオープンソースの産業用ソフトウェアを諦めることにしました - OGG 1.0 がリリースされ、Huawei がすべてのソース コードを提供しました。Google Python Foundation チームは「コード クソ マウンテン」によって解雇されました Fedora Linux 40が正式リリース。有名ゲーム会社がリリース 新規定:従業員の結婚祝儀は10万元を超えてはならない。チャイナユニコム世界初のオープンソースモデルLlama3 8B中国語版をリリース。Pinduoduoに賠償判決国内のクラウド入力方式に500万元の罰金- クラウドデータアップロードのセキュリティ問題がないのはファーウェイだけ
{{名前}}
{{名前}}

おすすめ

転載: my.oschina.net/HelloGitHub/blog/11059487