Проекты на C
-
cmus
Компактный консольный музыкальный плеер. Создан для Unix-подобных систем и воспроизводит локальные аудиофайлы. Прост в использовании, потребляет мало ресурсов, быстро запускается и поддерживает разные аудиоформаты.

-
Remotery
Лёгкий инструмент для удалённого анализа CPU и GPU в реальном времени. Отслеживает многопоточную активность процессора и видеокарты. Состоит из одного C-файла, который легко встроить в проект, и веб-интерфейса для наблюдения и анализа производительности через браузер. Подходит для контроля игр во время работы и анализа мобильных приложений.

Проекты на C#
-
RunCat365
Бегущий кот на панели задач Windows. Небольшая программа на C# показывает анимацию кота: чем выше загрузка CPU, тем быстрее он бежит.

Проекты на C++
-
caesium-image-compressor
Бесплатная программа для сжатия изображений. Утилита на C++ с простым интерфейсом на китайском языке сжимает JPG, PNG и WebP без потерь, показывает результат в реальном времени и обрабатывает файлы пакетно. Есть клиенты для Windows, Linux и macOS и веб-версия без установки.

-
concurrentqueue
Быстрая неблокирующая конкурентная очередь для C++. Написана на C++11 и позволяет нескольким потокам одновременно добавлять и забирать элементы. Не требует блокировок, поставляется одним заголовочным файлом и подходит для задач с высокой нагрузкой и параллельной обработкой.
#include "concurrentqueue.h" moodycamel::ConcurrentQueue<int> q; q.enqueue(25); int item; bool found = q.try_dequeue(item); assert(found && item == 25); -
input-overlay
Плагин OBS для показа действий пользователя в трансляции. Выводит на экран нажатия клавиш и кнопок геймпада, а также движения мыши. Работает с OBS в Windows и Linux; пригодится для игровых стримов и обучающих демонстраций.

Проекты на Go
-
fscan
Открытый сканер безопасности внутренней сети. Утилита на Go запускает комплексную автоматическую проверку одной командой. Поддерживает сканирование портов, подбор учётных данных на распространённых серверах, поиск уязвимостей веб-приложений и перехват NetBIOS.

-
go-humanize
Библиотека Go для понятного представления чисел и времени. Функции форматирования превращают числовые значения в удобный для чтения вид: размер файлов, относительное время, числа с разделителями тысяч и порядковые числительные.
fmt.Printf("That file is %s.", humanize.Bytes(82854982)) // That file is 83 MB. fmt.Printf("This was touched %s.", humanize.Time(someTimeInstance)) // This was touched 7 hours ago. -
mactop
Монитор производительности Mac с процессором Apple. Аналог top, написанный менее чем на тысяче строк Go, в реальном времени показывает показатели чипов серии Apple M: загрузку CPU и GPU, память, сеть и диск.

-
micro
Современный текстовый редактор для терминала. Написан на Go и может заменить Nano. Работает сразу после загрузки без настройки на разных платформах; поддерживает несколько курсоров, подсветку синтаксиса, мышь и плагины. Особенно удобен при редактировании файлов на сервере через SSH.

-
superfile
Красивый файловый менеджер для терминала. Даёт наглядный интерфейс для операций с файлами из командной строки. По умолчанию использует сочетания клавиш в стиле Vim; поддерживает плагины и настройку тем.

Проекты на Java
-
Acode
Редактор кода для Android. Лёгкая веб-IDE с быстрым просмотром результата, консолью и многочисленными плагинами. Поддерживает HTML, Python, Java, JavaScript и другие языки.

-
blossom
Облачные заметки с двусторонними ссылками для размещения на своём сервере. Хранит заметки, изображения и личные планы с синхронизацией между устройствами в реальном времени. Поддерживает Markdown, двусторонние ссылки, полное резервное копирование, преобразование веб-страниц, права нескольких аккаунтов и статистику. Доступна в Windows, macOS и браузере.

-
JSqlParser
Библиотека Java для разбора SQL. Преобразует SQL-запросы в структурированные Java-объекты, позволяя разбирать и динамически создавать запросы из кода. Поддерживает стандарт SQL и популярные реляционные СУБД.
String sqlStr = "select 1 from dual where a=b"; PlainSelect select = (PlainSelect) CCJSqlParserUtil.parse(sqlStr); SelectItem selectItem = select.getSelectItems().get(0); Assertions.assertEquals( new LongValue(1) , selectItem.getExpression()); Table table = (Table) select.getFromItem(); Assertions.assertEquals("dual", table.getName()); EqualsTo equalsTo = (EqualsTo) select.getWhere(); Column a = (Column) equalsTo.getLeftExpression(); Column b = (Column) equalsTo.getRightExpression(); Assertions.assertEquals("a", a.getColumnName()); Assertions.assertEquals("b", b.getColumnName()); -
odc
Корпоративная платформа для совместной разработки баз данных. Помогает эффективнее писать SQL и управлять данными. Построена на Spring Boot и Electron, предлагает веб- и настольный клиенты. Проверяет SQL по правилам, откатывает изменения, управляет жизненным циклом данных, маскирует конфиденциальные сведения и ведёт аудит действий. Работает с OceanBase, Oracle, MySQL, Doris и другими источниками.

Проекты на JavaScript
-
papermark
Открытая платформа обмена документами. Альтернатива DocSend для размещения на своём сервере, построенная на Next.js и Tailwind CSS. После загрузки документа выдаёт ссылку для просмотра в браузере; поддерживает собственный домен и отслеживание статистики посещений.

-
plane
Открытая платформа управления проектами и задачами. Упрощает работу команды, легко осваивается и размещается на своём сервере. Поддерживает отслеживание задач, управление циклами, декомпозицию проектов и аналитику; может заменить JIRA.

-
swr
Библиотека React Hooks для загрузки данных. Упрощает запросы, автоматически управляя кешем, повторной проверкой данных и повторами при ошибках. Например, при возвращении пользователя на страницу снова запрашивает свежие данные у API.
import useSWR from 'swr' function Profile() { const { data, error, isLoading } = useSWR('/api/user', fetcher) if (error) return <div>failed to load</div> if (isLoading) return <div>loading...</div> return <div>hello {data.name}!</div> } -
undraw-ui
Компонент комментариев для Vue 3. Предлагает комментарии, сворачивание содержимого, ответы и эмодзи, а также компоненты оглавления и поиска.

-
uppy
Простой встраиваемый компонент загрузки файлов на JavaScript. Лёгкий инструмент с приятным интерфейсом принимает файлы из разных источников, возобновляет прерванную загрузку, поддерживает локализацию, предварительный просмотр, редактирование и загрузку нескольких файлов.
import React, { useEffect } from 'react' import Uppy from '@uppy/core' import Webcam from '@uppy/webcam' import { Dashboard } from '@uppy/react' const uppy = new Uppy().use(Webcam) function Component () { return <Dashboard uppy={uppy} plugins={['Webcam']} /> }
Проекты на Kotlin
-
Lemuroid
Универсальный эмулятор игр для Android. Основан на Libretro и запускает ретро-игры для NES, GBA, 3DS, PSP и других консолей. Поддерживает мгновенные сохранения, локальную многопользовательскую игру и настройку кнопок.

Проекты на Python
-
buku
Мощный менеджер закладок. Открытая и лёгкая консольная утилита с акцентом на конфиденциальность. Импортирует закладки из популярных браузеров, автоматически получает сведения о страницах, синхронизирует данные между платформами и предлагает развитый поиск.

-
flagsmith
Платформа для управления флагами функций и настройками. Открытое веб-приложение на Django REST framework рассчитано на небольшие и средние команды. Управляет включением функций и удалённой конфигурацией, поддерживает A/B-тесты, многовариантные эксперименты и организации. Помогает постепенно выпускать функции, проверять гипотезы и управлять окружениями.

-
marimo
Реактивный блокнот для Python. При взаимодействии с интерфейсом автоматически выполняет зависимые ячейки и обновляет их результат, сохраняя согласованность кода и вывода. Хранится в обычном Python-файле: его можно запускать как скрипт или развёртывать как интерактивное веб-приложение.

-
umap
Библиотека Python для снижения размерности данных. Отображает многомерные данные в пространстве меньшей размерности, помогая исследовать сложные наборы. По сравнению с t-SNE лучше сохраняет глобальную структуру и быстро выполняет преобразование. Подходит для визуализации, извлечения признаков и кластерного анализа.
import umap from sklearn.datasets import load_digits digits = load_digits() mapper = umap.UMAP().fit(digits.data) umap.plot(mapper, labels=digits.target)
-
Windrecorder
Поиск по истории экрана. Программа для Windows непрерывно записывает происходящее на экране и позволяет искать и воспроизводить записи. Данные не загружаются в сеть; OCR и распознавание изображений помогают находить прошлые действия.

Проекты на Rust
-
bacon
Фоновая проверка кода Rust. Следит за проектом и сразу сообщает разработчику о предупреждениях, ошибках и проваленных тестах, чтобы не приходилось постоянно запускать проверки вручную.

-
bandwhich
Консольный монитор пропускной способности сети. Открытая утилита в реальном времени показывает использование сети по процессам, соединениям и удалённым адресам.

-
rust-by-practice
Практические упражнения по Rust. Большая подборка задач с ответами помогает новичкам освоить язык. Код можно редактировать и запускать прямо в браузере.
Проекты на Swift
-
MacSymbolicator
Символизация отчётов о сбоях macOS и iOS. Простое приложение для Mac превращает шестнадцатеричные адреса в имена функций и номера строк исходного кода, помогая установить причину сбоя. Поддерживает отчёты форматов crash и ips.

Искусственный интеллект
-
facefusion
Открытая программа для замены и улучшения лиц на фото и видео. Меняет лицо на другое, повышает чёткость лица и фона. Предлагает удобный веб-интерфейс и возможность обработки на CPU без сложной настройки.

-
litellm
Унифицированный доступ к API больших моделей. Приводит интерфейсы разных ИИ-моделей и сервисов к формату OpenAI, упрощая переключение между ними и управление ими. Позволяет задавать бюджет и частоту запросов, управлять ключами API и настраивать прокси-сервер OpenAI.
from litellm import completion import os ## set ENV variables os.environ["OPENAI_API_KEY"] = "your-openai-key" os.environ["COHERE_API_KEY"] = "your-cohere-key" messages = [{ "content": "Hello, how are you?","role": "user"}] # openai call response = completion(model="gpt-3.5-turbo", messages=messages) # cohere call response = completion(model="command-nightly", messages=messages) print(response)
-
llama3-from-scratch
Руководство по созданию Llama 3 с нуля. Послойная реализация помогает понять работу LLM. На PyTorch автор показывает загрузку весов, токенизацию текста, конфигурацию модели и ключевые части Transformer.

Прочее
-
cloudflare_temp_email
Бесплатный сервис временной почты на Cloudflare. Использует бесплатные возможности платформы и поддерживает получение и отправку писем, пароль для доступа, автоответы и просмотр вложений.

-
docs-linux-kernel-labs-zh-cn
Лабораторные работы по ядру Linux. Перевод на китайский язык курса Бухарестского политехнического университета по разработке ядра. Состоит из лекций и практики: в виртуальной машине на QEMU можно попробовать разработку, сборку, развёртывание и запуск ядра.

-
LapisCV
Готовый шаблон резюме. Работает в Obsidian и Typora, основан на Markdown и позволяет легко редактировать документ с предварительным просмотром. Сдержанное оформление подходит для официального резюме, которое можно экспортировать в PDF прямо из редактора.

-
OV-Watch
Недорогие открытые умные часы. Сборка обходится примерно в 80 юаней. Помимо обычных функций часов, есть режим сна, Bluetooth, шагомер, хранение карт, компас и измерение пульса.

-
phonedata
База принадлежности телефонных номеров. Содержит более 400 000 диапазонов мобильных номеров Китая и сведения о регионах; данные собраны из открытых интернет-источников.
Открытые книги
-
LLMBook-zh.github.io
«Большая языковая модель». Открытая книга для программистов и студентов, начинающих изучать LLM. Объясняет основные принципы и технологии, содержит сопутствующую библиотеку инструментов и модели для практики.

-
raytracing.github.io
Серия книг «Трассировка лучей за выходные» (Ray Tracing in One Weekend). Введение в создание трассировщика лучей на C++. Трассировка лучей моделирует распространение света в виртуальной сцене, создавая реалистичные изображения.
