Проекты на C
-
acwj
Практическое руководство по написанию компилятора C. Материал построен вокруг практики и постепенно учит создавать на C самокомпилирующийся компилятор, способный работать на реальном оборудовании.

-
zstd
Реализация быстрого алгоритма сжатия данных без потерь Zstandard. Степень сжатия Zstd близка к lzma, lzham и ppmx, а производительность выше, чем у lza и bzip2. При сопоставимой степени сжатия он распаковывает данные быстрее других алгоритмов. Zstd используется во многих известных проектах и играх. Пример кода:
static void compress_orDie(const char* fname, const char* oname) { size_t fSize; void* const fBuff = mallocAndLoadFile_orDie(fname, &fSize); size_t const cBuffSize = ZSTD_compressBound(fSize); void* const cBuff = malloc_orDie(cBuffSize); /* Compress. * If you are doing many compressions, you may want to reuse the context. * See the multiple_simple_compression.c example. */ size_t const cSize = ZSTD_compress(cBuff, cBuffSize, fBuff, fSize, 1); CHECK_ZSTD(cSize); saveFile_orDie(oname, cBuff, cSize); /* success */ printf("%25s : %6u -> %7u - %s \n", fname, (unsigned)fSize, (unsigned)cSize, oname); free(fBuff); free(cBuff); }
Проекты на C#
Проекты на Go
-
algorithm-pattern
Сборник задач с LeetCode. Материалы начинаются с основ Go и содержат шаблоны и подходы к решению задач, а примеры кода написаны на Go.
-
chanify
Сервис на Go для отправки push-уведомлений на устройства iOS. Установите сопутствующее iOS-приложение на телефон, разверните сервис через Docker — и сможете отправлять заданные сообщения в приложение одной командой.
# 发送文本消息 $ curl --form-string "text=hello" "http://<address>:<port>/v1/sender/<token>" # 发送文本文件 $ cat message.txt | curl -H "Content-Type: text/plain" --data-binary @- "http://<address>:<port>/v1/sender/<token>"
-
ebiten
Библиотека двумерного игрового движка для Go. С её помощью легко создавать на Go 2D-игры для разных платформ, а множество примеров в проекте помогут быстро начать работу.

-
imaging
Библиотека обработки изображений для Go. Поддерживает изменение размера, поворот, обрезку, настройку яркости и другие операции. Пример кода:
// 调整 dstImage128 := imaging.Resize(srcImage, 128, 128, imaging.Lanczos) // 锐化 dstImage := imaging.Sharpen(srcImage, 0.5)
-
jql
Инструмент на Go для запросов к данным JSON. Он легко устанавливается, использует простой синтаксис и содержит много практических примеров:
# 查询 test.json 文件中,所有国家的名称 cat test.json | jql '(elem "countries" (elem (keys) (elem "name")))' [ "Poland", "United States", "Germany" ]
Проекты на Java
-
flink-recommandSystem-demo
Система рекомендаций товаров в реальном времени на базе Flink. Проект помогает изучить устройство и процессы рекомендательных систем. Flink обрабатывает журналы, рассчитывает популярность товаров и сохраняет результаты в Redis. Метки пользовательских профилей и актуальные записи помещаются в HBase. При запросе рекомендаций система строит рейтинг популярных товаров по профилю пользователя, а затем объединяет результаты модулей коллаборативной фильтрации и рекомендаций по меткам.

-
jacoco
Библиотека для измерения покрытия тестами Java-кода.

-
kooder
Сервис поиска по коду с открытым исходным кодом. Ищет исходники, репозитории и задачи в системах размещения кода, включая GitLab и Gitea.

-
OpenRefine
Настольный инструмент для очистки данных. Позволяет визуально анализировать и упорядочивать данные, работает в Windows, Linux и macOS. Поддерживает запросы, фильтрацию, удаление дубликатов и анализ, превращает беспорядочные данные в аккуратные таблицы и экспортирует результат в разные форматы. С большими объёмами данных справятся даже пользователи без навыков программирования и знания SQL.

Проекты на JavaScript
-
drawio
Простой и мощный инструмент для построения диаграмм. Бесплатный проект с открытым кодом можно развернуть на своём сервере или использовать онлайн; по возможностям он приближается к Microsoft Visio. Поддерживает блок-схемы, диаграммы последовательностей, сетевые топологии, диаграммы Ганта, интеллект-карты и схемы моделей, а экспорт доступен в PNG, SVG, PDF, HTML, VSDX и других форматах.

-
kutt
Бесплатный сервис коротких ссылок с открытым кодом. Построен на Node.js, Express и React; поддерживает управление ссылками, собственные короткие адреса, защиту ссылок паролем и статистику переходов.

-
nav
Статический сайт-навигатор с поддержкой SEO. Полностью клиентский проект не требует серверной части, готов к работе сразу после установки и отличается простым, аккуратным интерфейсом.

-
npkill
Инструмент для быстрого поиска и удобного удаления каталогов node_modules. Помогает освободить занятое ими место на диске и избавляет от ручного поиска больше не нужных каталогов.

-
taro
Лёгкий трёхмерный игровой движок для веба. Основан на three.js и cannon-es и поддерживает физику твёрдых тел.

Проекты на PHP
-
question2answer
Бесплатная платформа вопросов и ответов с открытым кодом на PHP и MySQL. В ней есть практически все ожидаемые возможности, поэтому остаётся выбрать, что строить: Zhihu (китайский аналог Quora) или Stack Overflow.
- Голосование за ответы, комментарии, выбор лучшего ответа, отслеживание и закрытие вопросов.
- Полноценное управление пользователями и правами доступа.
- Поддержка нескольких языков.
- Поиск похожих вопросов при вводе запроса.
- И многое другое.

Проекты на Python
-
apkleaks
Консольная утилита для поиска конфиденциальных данных в APK-файлах.
// custom-rules.json { "Amazon AWS Access Key ID": "AKIA[0-9A-Z]{16}", ... } $ apkleaks -f /path/to/file.apk -p rules.json -o ~/Documents/apkleaks-results.txt
-
graphene-django
Библиотека для простой интеграции GraphQL в проекты на Django.
-
tomato-clock
Консольный таймер для метода помидора, написанный на Python. В нём чуть больше 100 строк кода и нет сторонних зависимостей.
🍅 tomato 25 minutes. Ctrl+C to exit 🍅🍅---------------------------------------------- [8%] 23:4 ⏰ -
vardbg
Инструмент отладки, который экспортирует процесс выполнения программы на Python в видео или анимацию. Подходит для изучения алгоритмов с помощью анимаций и создания видео с разбором кода.

Проекты на Rust
-
fselect
Консольная утилита для поиска файлов с помощью SQL-подобных запросов.
fselect size, path from /home/user where name = '*.cfg' or name = '*.tmp' fselect size, abspath from ./tmp where size gt 2g fselect hsize, abspath from ./tmp where size lt 8k
Проекты на Swift
-
awesome-ios
Большая коллекция открытых проектов для iOS. Она охватывает проекты на Objective-C и Swift с разделами о сетях, UI, JSON, базах данных, аудио и видео — хорошее место для начинающих iOS-разработчиков, которые ищут примеры с открытым кодом.

-
Knot
Инструмент перехвата сетевого трафика для iOS. Поддерживает разбор HTTP(S) и трафика, экспорт в нескольких форматах, управление сертификатами и анализ процессов.

-
SwiftUITodo
Приложение для списка дел на SwiftUI. Учебный проект помогает новичкам освоить SwiftUI.

Искусственный интеллект
-
AI-Expert-Roadmap
Дорожная карта изучения искусственного интеллекта.

-
Real-Time-Person-Removal
Удаление людей из изображения в веб-браузере в реальном времени. Проект на JavaScript и TensorFlow.js создаёт эффект исчезновения человека.

Прочее
-
cloudmusic-vscode
Расширение NetEase Cloud Music для VS Code, работающее через веб-API сервиса. Поддерживает:
- Воспроизведение песен, добавление в избранное и отметки «Нравится».
- Режим рекомендаций и персональное FM-радио.
- Комментарии к песням, плейлистам и другому содержимому.
- Отображение текста песни.
- Поиск по популярным запросам, песням, альбомам, исполнителям и другим категориям.
- И многое другое.

-
LIII
Бесплатный BitTorrent-клиент с открытым кодом. Подойдёт тем, кто устал от рекламы и платного ускорения и хочет простой, удобный инструмент для загрузки файлов.

-
shapez.io
Исходный код доступной в Steam игры-симулятора строительства «Фабрика фигур». На бесконечной карте нужно добывать ресурсы, размещать сооружения, комбинировать фигуры и расширять свою фабрику. Игра расслабляет, но при этом предлагает сложные задачи.

Открытые книги
-
Probabilistic-Programming-and-Bayesian-Methods-for-Hackers
«Байесовские методы для хакеров: на примере Python».

-
tensorflow-handbook
«Краткое руководство по TensorFlow 2», читать онлайн.
-
The-design-and-implementation-of-a-64-bit-os
«Проектирование и реализация 64-разрядной операционной системы».

