Location>code7788 >text

HelloGitHub, issue 100.

Popularity:879 ℃/2024-07-26 08:31:19

Interest is the best teacher.HelloGitHub Get you interested in programming!

synopsis

HelloGitHub Share interesting, entry-level open source projects on GitHub.

/521xueweihan/HelloGitHub

Here are real-world projects, introductory tutorials, black technology, open source books, open source projects of large factories, covering a variety of programming languages Python, Java, Go, C/C++, Swift ... Let you feel the charm of open source in a short period of time and become interested in programming!


The following is the content of this issue|Every month28 bug fix

C Projects

1、darktable: Open source photography post-processing tools. This is a free and professional post-processing software for photography. It is like a virtual light table and darkroom that can help photographers store digital negatives, zoom in to view and retrieve photos. The software displays information such as the focal length and exposure of a photo, and supports features such as edit history, map mode and printing photos.

2、gnucash: Fully open source financial software. This is an open source financial software for individuals and small businesses that uses double-entry bookkeeping, provides a clean interface, and supports generating reports, reconciliations, multiple currencies, and accessing real-time stock prices for Windows, Linux, and macOS platforms.

C# Project

3、git-credential-managerNET: The universal Git credentials manager. NET-based Git credentials storage and management tool. It works out-of-the-box with no additional operations. When you use the git command, the tool automatically guides you through the login process without the need to log in again, making it easy to solve login and authentication failures when working on remote Git repositories, and supporting platforms such as GitHub, Bitbucket, and GitLab.

4、Lean: A C#-based quantitative trading engine. This is an open source, battle-tested quantitative trading engine written in C#. It supports writing trading algorithms in Python3 or C#, and is compatible with Windows, Linux and macOS platforms. It is suitable for researching quantitative trading strategies, backtesting and live trading scenarios.

5、space-station-14: Open source game Space Station 14. This project is an open source remake of the classic game Space Station 13. In this turn-based multiplayer role-playing game, players can choose from a variety of characters, such as engineers, captains, and renegades, and cooperate or compete with other players to survive in a resource-limited environment.

6、subtitleedit: Open source video subtitle editing tool. This is a free video subtitle editor for Windows. It is out-of-the-box and powerful, supports creating, adjusting, synchronizing and ripping subtitles, and also provides automatic translation, subtitle format conversion and speech recognition.

C++ project

7、diff-pdf: A tool to visually compare two PDF files. This is a PDF file comparison tool written in C++. It supports two ways to view the differences in the contents of the file output to a new PDF file, or directly in the GUI.

// Output diff
diff-pdf --output-diff=
// Direct view
diff-pdf --view

Go Project

8、buildg: Interactive Dockerfile debugging tool. This is an interactive debugging tool for Dockerfile based on BuildKit that supports setting breakpoints, single-stepping, and non-root modes, and can be used in editors such as VSCode.

9、devzat: A programmer's only SSH chat room. It's a chat room that connects via SSH, so users don't need to install a client and can log in with a single SSH command. It supports private messaging, multiple chat rooms, image and code highlighting, as well as integration with third-party services and self-hosted SSH chat rooms.

10、expr: Expression library for the Go language. This project is an expression language and evaluation engine designed specifically for the Go language, supporting a rich set of operators and high-level functions, with features such as safety, no side effects, and static type detection. Expression is a line of code consisting of variables, operators and functions, which can simplify complex computational tasks, mostly used in scenarios such as dynamic configuration and business rule engines. From@two pairs of chopsticks sqldc sharing

func main() {
    // displayed formula
	code := `all(Tweets, {.Len <= 240})`

	program, err := (code, (Env{}))
	if err != nil {
		panic(err)
	}

	env := Env{
		Tweets: []Tweet{{42}, {98}, {69}},
	}
    // 计算displayed formula
	output, err := (program, env)
	if err != nil {
		panic(err)
	}

	(output)
}

11、gdu: A command line tool for quickly viewing disk usage. This is a disk usage analyzer written in Go that quickly scans and displays the amount of disk space occupied by files and directories, and supports TUI (default), non-interactive and export usage.

Java Project

12、cryptomator: A tool to "lock" your files in the cloud. This is an open source file encryption tool for cloud storage, supporting Dropbox, OneDrive and other mainstream cloud storage services. It is easy to use, cross-platform, no registration, using AES-256 encryption uploaded to the cloud storage of files and directories, suitable for the need to back up data to the cloud, but also worried about data leakage of the scene. From@lonegunner sharing

13、JarEditor: IDEA plugin for direct editing of JAR files. This is an IntelliJ IDEA plugin that lets you edit the class and resource files in a JAR file without extracting it. It supports adding, deleting, and renaming files and directories in JAR packages, and provides features such as searching and copying the contents of JAR packages, and is compatible with the SpringBoot and Kotlin projects. From@HawkShadow sharing

14、PojavLauncher: Android launcher for Minecraft games. This program allows you to play Minecraft (My World) on Android, offering both offline and multiplayer online modes. It supports almost all versions of Minercraft and also installs modules and loaders such as Forge, Fabric and OptiFine.

JavaScript Project

15、grapesjs: Free visual Web page building platform. The project enables users to quickly design and build HTML templates for websites by drag-and-drop through an intuitive visual interface. It is WYSIWYG, mobile-ready and suitable for official websites, news and CMS.

16、react-content-loader: A React component that makes it easy to create skeleton screens. This project is used to create a placeholder React component on page load, it is small, easy to customize, provides a variety of preset styles and sample code, ready to use extremely easy to get started, support for React, Vue and Angular and other major frameworks.

import { Code } from 'react-content-loader'

const MyCodeLoader = () => <Code />

17、Sink: A short linking platform based on Cloudflare with access statistics. This project is a short link service running on Cloudflare that supports URL shortening, visit analytics, and link expiration. From@Noodles sharing

18、: Self-hosted chatbot builder. This project makes it easy for users to create advanced chatbots and embed them in websites through a visual drag-and-drop interface. It offers more than 30 chat building blocks with support for self-hosting, analytics tools, custom domains and branding customization for scenarios such as online customer service and sales support.

19、: Extremely easy to use JavaScript library for typing animations. This project is a JavaScript library dedicated to creating typing animation effects that is easy to use and SEO friendly, with support for removing effects, setting typing speed and loop count, and more.

var typed = new Typed('.element', {
  strings: ["First sentence.", "Second sentence."],
  typeSpeed: 30
});

Kotlin Project

20、WiFiAnalyzer: Android application for analyzing WiFi signals. This project is a WiFi analysis tool written in Kotlin, which provides an intuitive graphical representation of the WiFi network, and supports features such as identifying surrounding WiFi, measuring signal strength, and viewing channel congestion.

Python Project

21、buzz: Audio transcription and translation tool. This project is a Whisper-based audio transcription and translation tool that is easy to use out-of-the-box, supports speech-to-text, audio translation, multiple languages, and offline use for macOS, Windows, and Linux.

22、helium: Python library that simplifies browser automation. This project is a lightweight Python library based on Selenium that makes it easier and more convenient to write browser automation scripts in Python by providing a more advanced and easy-to-use API with support for Chrome and Firefox browsers.

23、jurigged: A hot reloading tool for Python. This is a library dedicated to Python that provides hot reloading capabilities to modify and update Python code while the program is running, without restarting the program.

# Loop over a function
jurigged --loop function_name 
jurigged --loop module_name:function_name 

# Only stop on exceptions
jurigged --xloop function_name 

24、python-sortedcontainersSortedList: A better Python library for sorting collections. The project provides three data structures, SortedList, SortedDict, and SortedSet, which are fully compatible with the APIs for the built-in data types of List, Dict, and Set. Though written in pure Python, the speed is comparable to Python libraries implemented with C extensions.

from sortedcontainers import SortedList
sl = SortedList(['e', 'a', 'c', 'd', 'b'])
# sl: SortedList(['a', 'b', 'c', 'd', 'e'])
sl *= 10_000_000
('c')  # 10000000
sl[-3:]  # ['e', 'e', 'e']

from sortedcontainers import SortedDict
sd = SortedDict({'c': -3, 'a': 1, 'b': 2})
# sd: SortedDict({'a': 1, 'b': 2, 'c': -3})
(index=-1)  # ('c', -3)

from sortedcontainers import SortedSet
ss = SortedSet('abracadabra')
# ss: SortedSet(['a', 'b', 'c', 'd', 'r'])
ss.bisect_left('c')  # 2

25、radon: Python code quality analysis tool. This is a powerful Python code metrics tool that calculates a variety of code metrics, including McCabe complexity, Halstead metrics, and maintainability indices, for scenarios such as Python code quality assessment and continuous integration.

$ radon cc sympy/solvers/ -a -nc
sympy/solvers/
    F 346:0 solve - F
    F 1093:0 _solve - F
    F 1434:0 _solve_system - F
    F 2647:0 unrad - F
    F 110:0 checksol - F
    F 2238:0 _tsolve - F
    F 2482:0 _invert - F
    F 1862:0 solve_linear_system - E
    F 1781:0 minsolve_linear_system - D
    F 1636:0 solve_linear - D
    F 2382:0 nsolve - C

11 blocks (classes, functions, methods) analyzed.
Average complexity: F (61.0)

Rust Project

26、komorebi: Tiling Window Manager for Windows. This is a desktop window management tool designed for Windows that supports automatic window tiling, managing multiple virtual desktops and multiple monitors for Windows 10 and later.

27、min-sized-rustRust Binary File Size Optimization: Ways to Optimize the Size of Rust Binary Files Rust does not optimize binary file size by default when building, and this project describes tools and techniques on how to reduce the size of a binary file while keeping the functionality of a Rust program intact for size-sensitive scenarios such as embedded and IoT.

28、readyset: SQL database caching engine developed in Rust. This project uses a Rust-developed caching layer for Postgres and MySQL databases that supports automatic cache maintenance, caching complex SQL query results, and keeping data synchronized in real time. It can be integrated into existing applications and databases with no code changes to significantly improve query performance. From@DeShuiYu sharing

Swift Project

29、ATV-Bilibili-demo: Open source BeiliBeili client for Apple TV. The project is designed for Apple TV (tvOS) Beili Beili client, it can be used to watch the video on the B station, live and pop-ups, support for login, cast screen, search and history and other functions, is a little trouble to install.

30、PlayCover: Tools to run iOS games and apps on your Mac. This program is designed for Apple Silicon Mac devices (M-series chips) to run iOS applications and games. It allows users to play iOS games on Mac computers by emulating the iPad environment and keyboard mapping features. You need to download the IPA file by yourself for macOS 12.0 or later.

other than

31、dart_simple_live: A simple and easy-to-use tool for watching live broadcasts. The program allows you to watch various mainstream live streaming platforms on a single APP with clients for Android, iOS, macOS and Android TV.

32、github-readme-terminal: Showcase GitHub personal data with retro terminal GIFs. This project generates a retro-style computer startup GIF animation showing your GitHub profile based on your GitHub personal data.

33、hugo-book: Book style Hugo theme. This is an open source Hugo theme that helps users easily create book-like documentation websites. It has a clean design, mobile-ready, multi-language support, and is suitable for technical documentation, online tutorials and books and other scenarios.

34、OMOTE: Open Source Universal Remote Control. The project is made with ESP32 universal remote control , it has a 2.8-inch capacitive touch screen , 2000 mAh battery and physical buttons , support for infrared , WiFi and Bluetooth connectivity , able to control a variety of home appliances .

35、pintree: Chrome bookmarklet into a navigation station. This project converts a Chrome bookmarklet into a beautiful and easy-to-use navigation page in a few simple steps. Since it generates a static site, it can't automatically synchronize the added bookmarks. From@lonegunner sharing

36、Scoop: A great tool for installing software from the Windows command line. This project is a Windows command line installation tool similar to Homebrew. It installs applications from the command line, eliminates privilege popups, hides the GUI wizard, handles dependencies automatically, and prevents polluting the PATH environment variable.

scoop install sudo
sudo scoop install 7zip git openssh --global
scoop install aria2 curl grep sed less touch
scoop install python ruby go perl

Open Source Books

37、introduction-to-git-and-github-ebook: A Beginner's Guide to Git and GitHub. This is an open source book that introduces the basics of Git and GitHub, including practical knowledge of installing Git, the GitHub CLI, branch management, and workflows.

38、machine-learning-for-trading: Code to accompany Machine Learning for Algorithmic Trading. This is a book on how to apply machine learning to trading strategies, and this project is a companion code and resource to the book, containing over 150 code examples covering data collection, model training, and strategy evaluation.

machine learning

39、gpt-computer-assistant: Minimalistic GPT-4o client. This project is a GPT-4o client for Windows, macOS and Ubuntu with a minimalist user interface that supports performing a variety of tasks, including reading the screen, opening applications, system audio and text input.

40、mem0: A Python library that enhances LLM context continuity. This project can provide a memory layer for many mainstream large language models, and it supports the preservation of the session and context of a user's interaction with an LLM, which can be dynamically updated and adapted in real-time to enhance AI personalization for personalized LLM applications that require long-term memory, such as learning assistants, medical assistants, and virtual companions.

from mem0 import Memory
m = Memory()
# Add
result = ("Likes to play cricket on weekends", user_id="alice", metadata={"category": "hobbies"})
# Search
related_memories = (query="What are Alice's hobbies?", user_id="alice")
# Update
result = (memory_id="m1", data="Likes to play tennis on weekends")

41、Retrieval-based-Voice-Conversion-WebUI: An out-of-the-box AI voice changer. This project is based on the VITS voice-changing framework, which requires only a small amount of speech data and an ordinary graphics card to quickly train a high-quality voice conversion model. It provides easy-to-use Web and GUI interfaces, and supports real-time voice changing, vocal and accompaniment separation, and other features.

ultimate

Thank you for participating in the sharing of open source projects partners, welcome more open source enthusiasts to HelloGitHub self-referral/recommendation of open source projects. If you find an interesting project on GitHub, justClick hereShare it with the big guys!

This issue have you interested in open source projects? If so, leave a comment and let me know ~ If you have not read too much, you canClick to readPast Issue Content.

Thank you for reading and if you think this issue is still a good oneAsk for Likes, Ask for Shares ❤️