Проекты на C#
-
EverythingToolbar
Поиск и запуск приложений прямо с панели задач Windows. Результат показан на иллюстрации:

Проекты на C++
-
ChordNova
Бесплатная программа с открытым кодом для создания аккордов. Даже без знания теории музыки по интерфейсу видно, насколько серьёзно она устроена: он полон музыкальных терминов.

Проекты на Go
-
containers-the-hard-way
Миниатюрный Docker на Go с основными возможностями контейнеризации. Проект реализует подобие контейнеров только через системные интерфейсы Linux и помогает разобраться в их работе. Если хотите изучить контейнеры глубже, попробуйте написать по этому образцу собственный мини-Docker.

-
delve
Отладчик для Go. Если вы, как и автор, всё ещё отлаживаете программы через
fmt.Println, попробуйте его: инструмент прост в освоении, запускается разными способами и помогает быстрее находить ошибки. У проекта больше десяти тысяч звёзд на GitHub.
-
rqlite
Лёгкая распределённая реляционная БД на Go с SQLite в качестве хранилища. Хороший первый проект для изучения устройства распределённых баз данных: знакомый движок позволяет сосредоточиться на распределённых механизмах. Начните с документации. Схема архитектуры:

-
vegeta
Инструмент нагрузочного тестирования HTTP на Go. Особенно впечатляет визуализация результатов команды ниже с vegeta, jaggr и jplot:
echo 'GET http://localhost:8080' | \ vegeta attack -rate 5000 -duration 10m | vegeta encode | \ jaggr @count=rps \ hist\[100,200,300,400,500\]:code \ p25,p50,p95:latency \ sum:bytes_in \ sum:bytes_out | \ jplot rps+code.hist.100+code.hist.200+code.hist.300+code.hist.400+code.hist.500 \ latency.p95+latency.p50+latency.p25 \ bytes_in.sum+bytes_out.sum
Проекты на Java
-
Anki-Android
Android-клиент Anki для эффективного запоминания. В Anki учебные карточки содержат вопрос с одной стороны и ответ с другой, а алгоритм интервальных повторений помогает закреплять материал. Скачать приложение. Автор обещает руководство для новичков, если материал наберёт больше 100 отметок «нравится».

-
apollo
Распределённый центр управления конфигурацией с открытым кодом от Ctrip. Готов к работе сразу после установки: серверная часть построена на Spring Boot и Spring Cloud и не требует отдельного контейнера Tomcat. Изменения конфигурации вступают в силу сразу; предусмотрены права доступа и регламентированные процессы управления. Подходит для конфигурации микросервисов.

-
java-design-patterns
Практические примеры шаблонов проектирования на Java от участников сообщества открытого кода. Java-разработчику полезно знать хотя бы некоторые шаблоны. Материалы на английском, но код и схемы помогают понять смысл описаний: язык не должен мешать изучению шаблонов. Читать онлайн.
-
JustAuth
Java-компонент с открытым кодом для входа через сторонние сервисы. Просто подключается и позволяет добавить авторизацию через разные платформы: поддерживается уже больше десятка, список расширяется.

-
KnowStreaming
Мощная платформа мониторинга и администрирования кластеров Kafka. Возможностей столько, что её легко принять за платный продукт. Если в компании используют Kafka, присмотритесь к ней для внутренней эксплуатации: автор считает, что её внедрение может стать заметным профессиональным достижением.

Проекты на JavaScript
-
cloudbase-framework
Универсальный инструмент Tencent с открытым кодом для развёртывания облачных приложений. Размещает проект в облаке одной командой и не ограничивает выбор фреймворка или языка.

-
hearthstone-battlegrounds-tools
Плагин для отслеживания карт в игре Hearthstone от Blizzard. Обычным игрокам достаточно установить его на Windows или macOS. Разработчикам пригодится как пример полного цикла работы с Electron: управление несколькими процессами рендеринга, учёт различий платформ, контроль версий и публикация. Возможности:
- Статистика матчей за день и история результатов.
- Статистика сыгранных героев с автоматическим расчётом среднего места и частоты выбора.
- Данные о частоте выбора и среднем месте доступных героев на экране выбора.
- Запись сведений о матче, включая составы противников.
- Отключение от игры одним нажатием.
- И другие возможности.

-
Multiavatar
JavaScript-библиотека для создания аватаров. Случайным образом генерирует привлекательные и неповторяющиеся портреты с учётом разных культур.

-
newbee-mall-vue3-app
Фронтенд интернет-магазина с открытым кодом на Vue 3.0. При небольшом размере в нём есть главная страница, категории, поиск, управление адресами, вход и регистрация и другие основные разделы. Подойдёт начинающим и тем, кто уже знаком с Vue 3.x.

-
X6
Движок интерактивных графов от AntV. Готовые компоненты взаимодействия и удобная настройка узлов помогают быстро создавать редакторы блок-схем, DAG и ER-диаграмм. Пример кода:
import { Graph } from '@antv/x6'; const graph = new Graph({ container: document.getElementById('container'), width: 800, height: 600, background: { color: '#fffbe6', // 设置画布背景颜色 }, grid: { size: 10, // 网格大小 10px visible: true, // 渲染网格背景 }, });
Проекты на PHP
-
easy-sms
PHP-компонент для отправки SMS. Возможности:
- Работа со многими операторами и сервисами отправки.
- Единый интерфейс для всех платформ.
- Добавление и удаление провайдеров через конфигурацию.
- Несколько встроенных стратегий выбора провайдера и поддержка собственных стратегий.
- И другие возможности.
use Overtrue\EasySms\EasySms; $config = [ // HTTP 请求的超时时间(秒) 'timeout' => 5.0, // 默认发送配置 'default' => [ // 网关调用策略,默认:顺序调用 'strategy' => \Overtrue\EasySms\Strategies\OrderStrategy::class, // 默认可用的发送网关 'gateways' => [ 'yunpian', 'aliyun', ], ], // 可用的网关配置 'gateways' => [ 'errorlog' => [ 'file' => '/tmp/easy-sms.log', ], 'yunpian' => [ 'api_key' => '824f0ff2f71cab52936axxxxxxxxxx', ], 'aliyun' => [ 'access_key_id' => '', 'access_key_secret' => '', 'sign_name' => '', ], //... ], ]; $easySms = new EasySms($config); $easySms->send(13188888888, [ 'content' => '您的验证码为: 6379', 'template' => 'SMS_001', 'data' => [ 'code' => 6379 ], ]); -
mochat
Фреймворк и система управления корпоративным WeChat с открытым кодом. Мощная платформа на PHP с раздельными фронтендом и бэкендом для разработки решений на базе корпоративного WeChat.

Проекты на Python
-
lastversion
Инструмент на Python для поиска свежих версий библиотек и программ. Учитывает разные форматы номеров версий у авторов проектов, находит последнюю версию и позволяет скачать или установить её. Пригодится в системах сборки, например для скриптов автоматического обновления. Ищет на GitHub, GitLab, PyPI и других площадках, обращая внимание на новизну и стабильность выпуска.
# 获取最新的 Linux 版本号和最新的 Wordpress 版本号 lastversion linux # 作者的版本标签:v5.10 # 本项目提供的版本标签:5.10 lastversion wordpress # 作者的版本标签:5.6 # 本项目提供的版本标签:5.6
-
streamlit
Python-фреймворк для быстрого создания интерактивных страниц с визуализацией данных. Позволяет за минуты превратить данные в графики; бесплатная платформа публикации проекта облегчает обмен результатами и их обсуждение.

-
xonsh
Оболочка с поддержкой Python. Если вы знаете Python, но не умеете писать shell-скрипты, здесь можно сочетать команды оболочки с синтаксисом Python и быстрее решать свои задачи.

-
Zappa
Фреймворк для бессерверных приложений на Python. После разработки сервис можно упаковать и загрузить на облачную платформу несколькими командами. Такой подход также помогает сократить расходы на серверы.

Проекты на Ruby
-
spree
Полнофункциональный интернет-магазин с открытым кодом на Ruby on Rails. Проект хорошо структурирован и включает:
- spree_api — REST API.
- spree_frontend — адаптируемую витрину с приоритетом мобильных устройств.
- spree_backend — панель администрирования с широкими возможностями.
- spree_cmd — консольные инструменты для разработчиков.
- spree_core — слой данных, сервисы, почту и базовые компоненты.

Проекты на Swift
-
mas
Консольная версия Mac App Store.

-
Moya
Лёгкий фреймворк сетевого слоя на Swift поверх Alamofire. Даёт простой абстрактный интерфейс для запросов, сочетается с RXSwift, PromiseKit и ObjectMapper и справляется как с типовыми, так и со сложными задачами. Активное сообщество выпустило множество полезных расширений.
provider = MoyaProvider<GitHub>() provider.request(.zen) { result in switch result { case let .success(moyaResponse): let data = moyaResponse.data let statusCode = moyaResponse.statusCode // do something with the response data or statusCode case let .failure(error): // this means there was a network failure - either the request // wasn't sent (connectivity), or no response was received (server // timed out). If the server responds with a 4xx or 5xx error, that // will be sent as a ".success"-ful response. } }
-
MTMR
Приложение для настройки Touch Bar. Автор предлагает владельцам Mac с Touch Bar попробовать его и поделиться впечатлениями: у него самого такого компьютера нет.

Искусственный интеллект
-
DeepMoji
Проект по превращению текста в подходящие по настроению эмодзи с помощью глубокого обучения. Модель определяет эмоции, выраженные в тексте, и возвращает несколько близких по смыслу значков. Подходит для изучения машинного обучения: есть примеры, модель, данные, тесты и исходный код.

-
nanodet
Лёгкая модель обнаружения объектов для мобильных устройств без привязки к опорным прямоугольникам. Небольшой размер (1,8 МБ), высокая скорость (10,23 мс), невысокие требования к оборудованию при обучении и простой запуск, в том числе пример для Android.

Прочее
-
Ad-papers
Подборка научных статей, учебных материалов и докладов специалистов по вычислительной рекламе.
-
awesome-seo
Материалы по поисковой оптимизации в Google и монетизации трафика. Автор собрал авторитетные источники во время изучения SEO; подборка пригодится владельцам собственных сайтов.

-
free-font
Подборка бесплатных шрифтов для коммерческого использования. Для каждого шрифта указаны важные условия, в том числе необходимость отдельного разрешения на коммерческое применение.
-
game-programmer
Карта обучения разработчика игр от опытного специалиста. Поможет тем, кто сам хочет заняться игровой разработкой или заинтересовать ею детей. Версия на китайском.

-
luarocks
Менеджер пакетов Lua. Работает на трёх основных платформах. Пример установки и использования:
$ wget https://luarocks.org/releases/luarocks-3.5.0.tar.gz $ tar zxpf luarocks-3.5.0.tar.gz $ cd luarocks-3.5.0 $ ./configure && make && sudo make install $ sudo luarocks install luasocket $ lua Lua 5.3.5 Copyright (C) 1994-2018 Lua.org, PUC-Rio > require "socket" -
makeaplan_public
Приложение для составления планов на Flutter и Go. Помогает записывать планы, следить за их выполнением и достигать целей. Мобильный клиент написан на Flutter, сервер — на Go; они обмениваются данными через Protocol Buffers и gRPC. Подходит как практический проект для изучения обеих технологий.

-
theia
IDE с открытым кодом от Eclipse. По описанию это открытая среда разработки с возможностями, похожими на VS Code. Автор привык к своей IDE, но любителям пробовать новые инструменты предлагает присмотреться.

Открытые книги
-
DeepLearning-500-questions
Книга «500 вопросов о глубоком обучении» (DeepLearning-500-questions) для подготовки ИИ-инженеров к собеседованиям. Охватывает ключевые понятия глубокого обучения и типичные письменные задания крупных компаний.