Проекты на C
-
swipe-workspace
Управление рабочими столами Linux жестами двумя пальцами на базе libinput. Программа переключает экраны свайпами по сенсорной панели. Возможности пока скромные, а поддержка ограничена одной платформой, но самостоятельная реализация полезной функции приносит особое удовлетворение.

Проекты на CSS
-
tabler
Бесплатный open-source шаблон панели управления на базе Bootstrap 4.

Проекты на Go
-
mqant
Лаконичный и производительный распределённый фреймворк игровых серверов на Go. В руководстве по быстрому старту автор также объясняет выбор Go и некоторые архитектурные решения.
Проекты на JavaScript
-
battle-city
Классическая игра Battle City на React — её можно запустить онлайн. Все желающие могут присоединиться к разработке и отправить свой код в проект.

-
gcoord
Лёгкая JS-библиотека для работы с географическими координатами. Из-за особенностей регулирования геоданных в Китае координаты из API могут отображаться на картах Baidu или Amap со смещением в несколько сотен метров. gcoord преобразует координаты между системами и исправляет это смещение. Пример преобразования в систему координат Baidu Maps:
var result = gcoord.transform( [ 116.403988, 39.914266 ], // 经纬度坐标 gcoord.WGS84, // 当前坐标系 gcoord.BD09 // 目标坐标系 ); console.log( result ); // [ 116.41661560068297, 39.92196580126834 ] -
SVG-Skeleton
Описание заглушек скелетного экрана с помощью SVG-элементов. Поддерживает JSX для привычной записи SVG, повторное использование SVG-фрагментов и компоненты в виде классов. Интерфейс становится удобнее, подход соответствует современным тенденциям, а размер в 2 КБ почти не влияет на загрузку. Пример:
import SVGSkeleton from 'svg-skeleton'; const { h, render } = SVGSkeleton; // 内置 #shining 动画 const Item = ( <svg width="750" height="191"> <circle cx="95" cy="102" r="63" fill="#edeff0" mask="url(#shining)" ></circle> <rect width="160" height="35" x="190" y="45" fill="#edeff0" mask="url(#shining)" ></rect> <rect width="400" height="35" x="190" y="90" fill="#edeff0" mask="url(#shining)" ></rect> <line x1="0" y1="190" x2="750" y2="190" stroke="#edeff0"></line> </svg> ); const Page = ( ( ) => { let List = [ ]; for ( let i = 0; i < 6; i++ ) { List.push( ( <Item y={ i == 0 ? 0 : i * 191 } ></Item> ) ); } return ( <svg width="750" height="1334" fill="#fafafa"> { List } </svg> ); } )( ); render( Page, document.body );
-
vuepress
Официальный генератор статических сайтов от Vue. Похоже, пришло время обновить личные блоги. Доступна официальная документация на китайском.

-
zan-proxy
Набор инструментов для перенаправления HTTP-запросов, имитации ответов и настройки собственного DNS. Позволяет отлаживать локальный код на опубликованных страницах, не завися от окружения. Для разработчиков с неудобной средой разработки это настоящее облегчение.

Проекты на Objective-C
-
RDM
Утилита для удобного изменения разрешения Retina-дисплея MacBook.

Проекты на Python
-
airflow
Платформа для управления заданиями по расписанию. Управляет и планирует различные фоновые периодические задачи, а также предоставляет веб-интерфейс. Когда число таких задач достигает сотни, эффективно и удобно управлять ими через crontab уже не получается — эту проблему и решает проект.

-
pook
Библиотека для имитации ответов на HTTP-запросы, полезная, например, в модульных тестах. Пример вызова с помощью декораторов:
import pook import requests @pook.get('http://httpbin.org/status/500', reply=204) @pook.get('http://httpbin.org/status/400', reply=200) def fetch(url): return requests.get(url) res = fetch('http://httpbin.org/status/400') print('#1 status:', res.status_code) res = fetch('http://httpbin.org/status/500') print('#2 status:', res.status_code) -
Synonyms
Инструментарий для работы с синонимами китайского языка. Поддерживает множество задач обработки естественного языка: выравнивание текстов, рекомендательные алгоритмы, расчёт сходства, семантические сдвиги, извлечение ключевых слов и понятий, автоматическое реферирование и поисковые системы. Пример:
import synonyms synonyms.seg("能量")
-
wtfpython
Коллекция интересных, неожиданных и малоизвестных фрагментов кода на Python. Доступен перевод на китайский.

Искусственный интеллект
-
pytorch-book
Примеры кода из книги «Фреймворк глубокого обучения PyTorch: введение и практика». Материалы можно использовать как самостоятельное вводное руководство и учебник по PyTorch. Структура содержания показана на изображении ниже.

Прочее
-
javascript-lessons
Учебник «JavaScript: прохождение уровней», в некоторых главах которого предусмотрены тщательно продуманные испытания.
-
linux-insides
Устройство ядра Linux изнутри. Доступен перевод на китайский.
-
open-source-mac-os-apps
Англоязычная коллекция open-source приложений для macOS с указанием языка программирования каждого из них.
Открытые книги
-
advanced-go-programming-book
Книга «Продвинутое программирование на Go» для разработчиков, которые уже знакомы с Go и хотят глубже изучить его продвинутые возможности.
-
modern-cpp-tutorial
Книга «Быстрый старт с C++ 11/14/17». Перед чтением стоит учитывать следующее:
- Книга рассчитана на читателей, которые уже знакомы с классическим C++ и без труда читают код на нём. Она особенно подойдёт опытным разработчикам на классическом C++, желающим быстро разобраться в возможностях современного C++.
- В книге рассматриваются некоторые приёмы «магии» современного C++, но лишь в ограниченном объёме. Она предназначена для быстрого знакомства и не подойдёт тем, кто ищет углублённый курс. Впрочем, опытные читатели смогут с её помощью повторить материал и проверить свои знания современного C++.