Проекты на C
-
acl
Кроссплатформенная сетевая библиотека и серверный фреймворк. Подходит и для сетевых клиентов, и для серверов. Поддерживает распространённые протоколы HTTP, SMTP, ICMP, MQTT, Redis и Memcache, а также форматы XML, JSON и BASE64.
- lib_acl — базовая библиотека
- lib_protocol — реализация HTTP и протоколов ICMP/PING
- lib_fiber — библиотека сопрограмм: перехватывает системные API read/write и вместе с epoll позволяет создавать высоконагруженные сетевые приложения

-
CPU-X
Бесплатная утилита для просмотра сведений о компьютере. Показывает данные о процессоре, материнской плате, памяти, видеокарте и операционной системе. Запускается с графическим интерфейсом или из консоли, работает в Linux и FreeBSD.

-
gifsicle
Утилита для сжатия и редактирования GIF-анимаций. Компактный, но функциональный инструмент умеет объединять GIF-файлы, извлекать все кадры, показывать сведения об изображении, уменьшать число кадров, задавать количество повторов и задержку, а также редактировать отдельные кадры.
# 安装 brew install gifsicle # 查看 gifsicle -I input.gif | head # 优化/压缩 gifsicle input.gif -O3 -o output.gif
Проекты на C#
-
Text-Grab
Лёгкая OCR-утилита для Windows. Она использует встроенный в Windows 10 API распознавания текста, чтобы преобразовывать в текст любые надписи на экране. Программа быстро запускается, не остаётся работать в фоне и доступна офлайн.

-
WinDynamicDesktop
Динамические обои для Windows по мотивам macOS. Программа переносит функцию динамического рабочего стола macOS в Windows 10: определяет время рассвета и заката с учётом местоположения и меняет обои в течение дня. Приложение доступно в Microsoft Store.

-
XCharts
Плагин визуализации данных для Unity. Построен на Unity UGUI, прост в освоении и поддерживает множество диаграмм: линейные, столбчатые, круговые, лепестковые, точечные, тепловые, кольцевые и свечные графики.

Проекты на C++
-
aseprite
Профессиональный редактор пиксельной графики с открытым кодом. Подходит для создания пиксель-арта и анимации спрайтов; среди возможностей — слои, свободное рисование, режим теней, пользовательские кисти, контуры, широкие пиксели, консольный интерфейс и сценарии Lua. Профессиональная версия платная, но недорогая; бесплатная версия не позволяет сохранять работы.

-
Cemu
Эмулятор игровой консоли Nintendo Wii U. Написан на C++ и распространяется с открытым кодом. Запускает большинство игр для Wii U и любительские игры; поддерживает Windows, Linux и macOS.

-
kys-cpp
Ремейк игры «Герои Цзинь Юна» на C++. Игра создана на SDL2; большая часть ресурсов взята из версии для DOS. Разработка завершена, игра работает.

-
wiliwili
Неофициальный клиент Bilibili (китайский видеохостинг), рассчитанный на управление геймпадом. Приложение на C++ предназначено для Nintendo Switch и по удобству просмотра приближается к официальному клиенту Bilibili для ПК. Поддерживаются сенсорное управление и кнопки геймпада.

Проекты на CSS
-
30diasDeCSS
Марафон: за 30 дней создать 30 мини-проектов на HTML и CSS. Для каждого проекта есть анимированная демонстрация результата, исходный код и перечень использованных приёмов.

Проекты на Go
-
cobra
На момент выхода выпуска это был самый популярный Go-фреймворк для создания CLI-приложений. С его помощью легко собирать консольные программы; им пользуются многие известные Go-проекты, в том числе Kubernetes, Hugo и GitHub CLI. Есть автодополнение, генерация структуры проекта и вложенные подкоманды.
var rootCmd = &cobra.Command{ Use: "hugo", Short: "Hugo is a very fast static site generator", Long: "A Fast and Flexible Static Site Generator built with love by spf13", Run: func(cmd *cobra.Command, args []string) { // Do Stuff Here }, } func Execute() { if err := rootCmd.Execute(); err != nil { fmt.Println(err) os.Exit(1) } }
-
fq
Просмотр двоичных файлов одной командой. Эта консольная утилита помогает изучать и обрабатывать файлы разных форматов, включая MP4, FLAC, MP3 и JPEG; её легко установить и использовать.

-
HackBrowserData
Консольная утилита для экспорта данных из браузеров. Она выгружает пароли, историю посещений, cookie, закладки, список загрузок, localStorage и другие локальные данные. Поддерживает популярные браузеры на разных платформах.

-
statsviz
Веб-приложение для наблюдения за показателями Go-программ в реальном времени. Графики показывают данные среды выполнения: кучу, объекты, Goroutines, MSpan и MCache.
mux := http.NewServeMux() statsviz.Register(mux)
-
v2
Минималистичная читалка RSS и Atom-лент. Простота заложена даже в устройстве программы: без веб-фреймворка и ORM, только Go, PostgreSQL и JavaScript. Неприхотливый интерфейс сочетается с практичными функциями: быстрым развёртыванием на своём сервере, управлением источниками, автоматической загрузкой материалов, горячими клавишами и учётными записями.

Проекты на Java
-
caffeine
Высокопроизводительная библиотека кэширования для Java. Она развивает идеи Guava и ConcurrentLinkedHashMap: локальный кэш обеспечивает более высокую долю попаданий и более быструю запись и чтение.
LoadingCache<Key, Graph> graphs = Caffeine.newBuilder() .maximumSize(10_000) .expireAfterWrite(Duration.ofMinutes(5)) .refreshAfterWrite(Duration.ofMinutes(1)) .build(key -> createExpensiveGraph(key));
-
ghidra
Бесплатный инструмент с открытым кодом для анализа программ. Национальное агентство безопасности США открыло исходный код Ghidra; с её помощью можно исследовать скомпилированные программы.

-
hippo4j
Динамический пул потоков со сбором метрик и оповещениями. Параметры пула можно менять во время работы, а его состояние — отслеживать в реальном времени. Поддерживается интеграция с RocketMQ, RabbitMQ, Tomcat и другими компонентами. Фреймворк помогает решать проблемы с оценкой параметров и непрозрачностью работы потоков.
@Bean @DynamicThreadPool public Executor sendMessageConsumeDynamicThreadPool() { String threadPoolId = "send-message-consume"; ThreadPoolExecutor sendMessageConsume = ThreadPoolBuilder.builder() .threadPoolId(threadPoolId) .threadFactory(threadPoolId) .dynamicPool() .build(); return sendMessageConsume; } -
solon
Лёгкий фреймворк для разработки приложений на Java. Помогает быстро создавать веб-проекты; основной фреймворк занимает всего 0,1 МБ. Подобно Flask в Python, он предлагает компактное ядро и сборку приложения из нужных плагинов.
@Controller public class App { public static void main(String[] args) { Solon.start(App.class, args, app -> { //手写模式 app.get("/hello1", ctx -> ctx.output("Hello world!")); }); } //注解模式 @Get @Socket @Mapping("/hello2") public String hello2(@Param(defaultValue = "world") String name) { return String.format("Hello %s!", name); } }
Проекты на JavaScript
-
jsoncrack.com
Наглядная визуализация данных JSON. Вместо обычного текста сервис представляет структуру в виде интеллект-карты: её можно масштабировать, сворачивать и разворачивать, искать узлы и экспортировать изображение. Инструмент также можно быстро развернуть как сервис.

-
m3u8-downloader
Загрузка видео из потоков M3U8. Этот формат часто используют для трансляций: видео разбивается на небольшие фрагменты .ts, а файл .m3u8 содержит адрес каждого фрагмента. Проигрыватель читает список и загружает фрагменты по очереди. Утилита использует тот же принцип, чтобы скачать видео целиком: установка не нужна, достаточно открыть веб-страницу.
// 下载整合后的 TS 文件 downloadFile(fileDataList, fileName, fileType) { this.tips = 'ts 碎片整合中,请留意浏览器下载' const fileBlob = new Blob(fileDataList, { type: 'video/MP2T' }) // 创建一个 Blob 对象,并设置文件的 MIME 类型 const a = document.createElement('a') a.download = fileName + '.' + fileType a.href = URL.createObjectURL(fileBlob) a.style.display = 'none' document.body.appendChild(a) a.click() a.remove() }
-
notesnook
Заметки со сквозным шифрованием. Приложение уделяет особое внимание приватности и шифрует данные алгоритмами XChaCha20-Poly1305 и Argon2. Функций много, но бесплатная версия сильно ограничена: в ней, например, нет поддержки Markdown и вставки изображений.

-
sakana
Милый симулятор Sakana. Мем Sakana появился благодаря аниме «Ликорис Рикойл»: забавное движение персонажа и возглас «Sakana» («рыба») быстро разошлись в сети. Проект помогает легко воссоздать этот момент.

-
tldraw
Компактный, но продуманный онлайн-инструмент для рисования. Можно добавлять стикеры, сохранять ход работы, экспортировать рисунок как изображение и рисовать вместе с другими.

Проекты на PHP
-
Piwigo
Онлайн-фотоальбом с открытым кодом. Веб-приложение на PHP и MySQL помогает управлять фотографиями; его легко установить и настроить с помощью тем и плагинов. Через приложения для iOS и Android можно загружать фотографии и управлять альбомом на ходу.

Проекты на Python
-
django-silk
Профилировщик производительности для Django. На одной странице он показывает среднее время обработки запросов, их количество, SQL-запросы и результаты анализа производительности кода. Эти данные помогают быстрее находить узкие места и причины медленных ответов сервиса.
# 安装 pip install django-silk # 中间件的方式使用 MIDDLEWARE = [ ... 'silk.middleware.SilkyMiddleware', ... ] INSTALLED_APPS = ( ... 'silk' )
-
Games
Подборка небольших настольных игр, полностью написанных на Python. Здесь больше 20 разных игр на библиотеках cocos2d, pygame, PyQt и других. Они не отличаются высокой увлекательностью, зато код проектов прост и подойдёт новичкам для обучения.

-
OCRmyPDF
Инструмент, который делает PDF доступными для поиска. Он распознаёт текст с помощью движка Tesseract OCR и добавляет в документ текстовый слой. После этого содержимое PDF можно искать и копировать; поддерживается более 100 языков.

-
pendulum
Библиотека, упрощающая работу со временем в Python. Она предлагает более удобный API, совместимый со стандартным модулем datetime, и позволяет напрямую заменить объекты datetime в коде. Поддерживает арифметику с датами, описание промежутков человеческим языком и работу с часовыми поясами.
>>> import pendulum >>> now_in_paris = pendulum.now('Europe/Paris') >>> now_in_paris '2016-07-04T00:49:58.502116+02:00' >>> tomorrow = pendulum.now().add(days=1) >>> past = pendulum.now().subtract(minutes=2) >>> past.diff_for_humans() '2 minutes ago' >>> delta = past - last_week >>> delta.hours 23 >>> delta.in_words(locale='en') '6 days 23 hours 58 minutes' -
pg_activity
Консольная утилита мониторинга PostgreSQL, похожая на top. Одной командой можно посмотреть состояние базы и подробности выполнения каждого SQL-запроса: длительность, использование ресурсов и скорость чтения и записи.

Проекты на Ruby
-
wpscan
Сканер безопасности сайтов на WordPress. Он ищет уязвимости, проверяет установленные плагины и темы, а также выявляет слабые пароли.

Проекты на Rust
-
easy_rust
Учебник по Rust, написанный простым английским языком. Многие материалы по Rust рассчитаны на тех, кому легко читать по-английски; автор подготовил руководство с более простой лексикой. Также есть перевод на китайский язык.
-
espanso
Умный инструмент для расширения текста на Rust. При вводе заданного ключевого слова он автоматически подставляет заранее подготовленный текст. Работает практически с любыми приложениями в Windows, macOS и Linux.

Проекты на Swift
-
TinyPNG4Mac
Неофициальный клиент TinyPNG для macOS. Сайт TinyPNG бесплатно сжимает изображения, а приложение позволяет обойтись без браузера и ручного скачивания файлов: достаточно перетащить JPEG или PNG в окно программы.

Искусственный интеллект
-
stable-diffusion
Модель для генерации изображений по текстовому описанию. Кроме того, она умеет превращать грубый набросок в детализированную художественную картинку.
# make sure you're logged in with `huggingface-cli login` from torch import autocast from diffusers import StableDiffusionPipeline pipe = StableDiffusionPipeline.from_pretrained( "CompVis/stable-diffusion-v1-4", use_auth_token=True ).to("cuda") prompt = "a photo of an astronaut riding a horse on mars" with autocast("cuda"): image = pipe(prompt)["sample"][0] image.save("astronaut_rides_horse.png")
-
style2paints
ИИ-помощник для раскрашивания линейных рисунков. Он быстро добавляет цвет на чёрно-белые изображения; качество результата получило высокие оценки. Инструмент полностью бесплатный и готов к работе сразу после запуска.

Прочее
-
bats-core
Система автоматизированного тестирования Bash. Она проверяет, соответствует ли результат работы скрипта ожиданиям, определяя успех теста по параметру Bash errexit (set -e).
#!/usr/bin/env bats @test "addition using bc" { result="$(echo 2+2 | bc)" [ "$result" -eq 4 ] } @test "addition using dc" { result="$(echo 2 2+p | dc)" [ "$result" -eq 4 ] } -
Crash-Course-Computer-Science-Chinese
Курс Crash Course Computer Science с китайскими субтитрами. Все 40 выпусков на YouTube снабжены выверенным переводом; курс охватывает темы от транзисторов до операционных систем и искусственного интеллекта. Это научно-популярное введение, а не обучение программированию.

-
missing-semester
Недостающий предмет в университетской программе по информатике. В вузах часто преподают структуры данных и операционные системы, но оставляют инструменты повседневной разработки для самостоятельного изучения. Курс MIT знакомит с командной оболочкой, редактором Vim и системой контроля версий Git. Чем раньше освоить эти инструменты, тем увереннее они войдут в работу и помогут в карьере.

-
nginx-tutorial
Бесплатный краткий учебник по Nginx. В нём разобраны установка, основные команды, обратное проксирование и балансировка нагрузки — этого достаточно, чтобы новичку освоить основы Nginx.

-
The-Art-of-Linear-Algebra
Линейная алгебра в иллюстрациях. «Linear Algebra for Everyone» — хорошо оценённый общедоступный курс; проект основан на нём и представляет материал в виде иллюстрированных конспектов.

-
WebKit
Движок веб-браузера с открытым кодом от Apple. На WebKit работают Safari, App Store, Mail и другие приложения в macOS и iOS. Его форк Blink — одна из ключевых частей Chromium, на котором основаны популярные браузеры.
Открытые книги
-
Cookbook
«Кулинарная книга инженера данных» (Data Engineer Cookbook). Книга рассказывает, какие знания и навыки нужно освоить, чтобы стать хорошим инженером данных.
