Офлайн-карты и файловый менеджер для всех устройств

Выпуск № 81 ·

Проекты на C

  1. ecapture

    Инструмент для перехвата расшифрованного HTTPS-трафика без сертификата CA. На основе eBPF он перехватывает данные до шифрования TLS: пригодится для аудита запросов MySQL и записи команд bash. Работает только в Linux и Android.

    ecapture
  2. FSHistory

    Первая игра серии Microsoft Flight Simulator. Проект позволяет сыграть онлайн в выпущенный в 1982 году авиасимулятор; на выбор доступны четыре версии.

    FSHistory
  3. iodine

    Инструмент для быстрого создания DNS-туннеля. Сервер и клиент написаны на C и передают IPv4-трафик внутри DNS-пакетов. Такой туннель часто используют для обхода межсетевых экранов: порт DNS обычно открыт, поэтому замаскированный под DNS трафик проходит через ограничения.

  4. tinyriscv

    Создание процессора RISC-V с нуля. Небольшое одноядерное 32-битное ядро написано на Verilog; в проекте есть весь код и подробное руководство. RISC-V — открытая архитектура набора команд, позволяющая свободно проектировать, производить и продавать совместимые чипы и ПО.

    tinyriscv

Проекты на C#

  1. DevToys

    Швейцарский нож разработчика. Набор повседневных инструментов: преобразование временных меток, декодирование разных форматов, форматирование вывода, выбор цвета и многое другое. Удобный и аккуратно оформленный интерфейс.

    DevToys
  2. Tai

    Учёт времени работы с программами в Windows. Утилита считает время между получением и потерей фокуса окном, показывая, сколько вы действительно пользовались приложением, а не сколько оно просто оставалось запущенным.

    Tai

Проекты на C++

  1. GASDocumentation

    Вводное руководство по плагину GAS для Unreal Engine 5. Автор объясняет GameplayAbilitySystem с основ и в конце создаёт с его помощью простую многопользовательскую стрелялку. Руководство будет полезно тем, кто интересуется Unreal Engine 5 и знает C++.

    GASDocumentation
  2. organicmaps

    Бесплатные офлайн-карты без рекламы. Приложение для Android и iOS рассчитано на путешественников, туристов, пеших походников и велосипедистов. Использует данные OpenStreetMap и предлагает подробные карты без подключения к сети, велосипедные маршруты, голосовую навигацию, горизонтали рельефа, профили высот, сведения о вершинах и уклонах.

    organicmaps
  3. tesseract

    Проверенный временем OCR-движок. Разработка началась в 1985 году, проект несколько раз менял владельцев, а в 2005 году HP открыла его исходный код. На момент выхода выпуска Tesseract был проектом с наибольшим числом звёзд GitHub среди OCR-решений с открытым кодом. Он работает на разных платформах, отличается высокой точностью и распознаёт более 100 языков, включая китайский.

Проекты на CSS

  1. china_school_badge

    Библиотека иконок с эмблемами китайских вузов. В ней собраны шрифтовые иконки с эмблемами более 200 университетов страны.

    china_school_badge
  2. daisyui

    Популярная библиотека компонентов для Tailwind CSS. Предлагает привлекательный дизайн, более чистую HTML-разметку и широкие возможности настройки.

    <ul class="menu p-3 bg-base-200 rounded-xl">
        <li class="menu-title">
          <span>Menu Title</span>
        </li>
        <li><a>First Menu Item</a></li>
        <li><a>Second Menu Item</a></li>
        <li><a>Third Menu Item</a></li>
    </ul>
    daisyui

Проекты на Go

  1. answer

    Сообщество вопросов и ответов с открытым кодом. Написано на Go, просто развёртывается и поддерживает баллы, вопросы, ответы и теги.

    answer
  2. btree

    Структура данных B-дерево на Go. Реализация Google с аккуратным кодом и подробными комментариями — полезный исходник для изучения. B-деревья позволяют искать, последовательно обходить, добавлять и удалять данные за логарифмическое время; их часто применяют в базах данных и файловых системах.

  3. nap

    Консольный менеджер фрагментов кода. Позволяет быстро создавать фрагменты и управлять ими через интерфейс в терминале. Поддерживает горячие клавиши, поиск, подсветку синтаксиса и настройку цветов.

    nap
  4. oh-my-posh

    Настройка приглашения терминала для разных оболочек. В комплекте есть готовые темы; инструмент работает с PowerShell, Bash, Zsh и другими оболочками в Windows, Linux и macOS, а также поддерживает автодополнение вводимых команд.

    oh-my-posh
  5. raft

    Реализация алгоритма Raft на Go. Raft — алгоритм консенсуса, который помогает узлам распределённого кластера согласованно переходить между состояниями.

Проекты на Java

  1. jimureport

    Онлайн-конструктор отчётов. Отчёты можно собирать перетаскиванием элементов; доступны проектирование форм, графические отчёты и вывод на большой экран.

    jimureport
  2. kafka-ui

    Платформа управления Kafka с открытым кодом. Веб-интерфейс создаёт и поддерживает сообщество, обещая бесплатное использование. В нём можно просматривать брокеры Kafka, топики, сообщения и потребителей, управлять несколькими кластерами, следить за производительностью и настраивать доступ.

    kafka-ui
  3. leetcode-editor

    Плагин для решения задач LeetCode прямо в IDE. Работает в продуктах JetBrains, включая IntelliJ IDEA, PyCharm и GoLand.

    leetcode-editor
  4. LibreraReader

    Android-читалка для множества форматов. Приложение открывает популярные типы документов и электронных книг: PDF, EPUB, MOBI, DjVu, FB2, TXT, RTF, AZW, HTML, CBZ, DOC и другие.

    LibreraReader

Проекты на JavaScript

  1. infisical

    Синхронизация переменных окружения в команде. Инструмент предлагает понятный интерфейс, сквозное шифрование, размещение на своём сервере, управление правами и интеграцию с CI/CD.

    infisical
  2. outils

    Набор функций для фронтенд-разработки. В нём есть часто нужные операции: форматирование дат, определение типа браузера, проверка номера мобильного телефона и другие.

    /**
     * 
     * @desc 获取操作系统类型
     * @return {String} 
     */
    function getOS() {
        var userAgent = 'navigator' in window && 'userAgent' in navigator && navigator.userAgent.toLowerCase() || '';
        var vendor = 'navigator' in window && 'vendor' in navigator && navigator.vendor.toLowerCase() || '';
        var appVersion = 'navigator' in window && 'appVersion' in navigator && navigator.appVersion.toLowerCase() || '';
    
        if (/iphone/i.test(userAgent) || /ipad/i.test(userAgent) || /ipod/i.test(userAgent)) return 'ios'
        if (/android/i.test(userAgent)) return 'android'
        if (/win/i.test(appVersion) && /phone/i.test(userAgent)) return 'windowsPhone'
        if (/mac/i.test(appVersion)) return 'MacOSX'
        if (/win/i.test(appVersion)) return 'windows'
        if (/linux/i.test(appVersion)) return 'linux'
    }
  3. podcast-together

    Совместное прослушивание подкастов с друзьями. Без регистрации и входа можно создать комнату или присоединиться к ней и слушать один выпуск вместе. Поддерживаются источники Xiaoyuzhou и китайский каталог Apple Podcasts.

    podcast-together
  4. terminalizer

    Инструмент для записи работы в терминале. Легко записывает действия в консоли, а результат можно сохранить как GIF или сразу опубликовать в интернете.

    terminalizer
  5. watching-you

    Библиотека JS-анимации, которая превращает DOM-элемент в следящий глаз. Она вычисляет положение элемента относительно цели — указателя мыши, другого DOM-элемента или значения поля ввода — и помогает создавать подобные эффекты.

    watching-you

Проекты на PHP

  1. snipe-it

    Система учёта ИТ-активов. Построена на Laravel 8 для небольших и средних компаний: поддерживает выдачу оборудования, создание этикеток с QR-кодами, инвентаризацию и напоминания об окончании гарантии.

    snipe-it

Проекты на Python

  1. Bottles

    Запуск программ и игр Windows в Linux. Утилита предлагает простой графический интерфейс, поэтому пользоваться ею можно и без навыков программирования.

    Bottles
  2. django-cacheops

    Гибкое кеширование Django ORM. Библиотека использует Redis и позволяет задавать срок хранения результатов запросов к базе данных через декораторы.

    from cacheops import cached_as
    
    @cached_as(Article, timeout=120)
    def article_stats():
        return {
            'tags': list(Article.objects.values('tag').annotate(Count('id')))
            'categories': list(Article.objects.values('category').annotate(Count('id')))
        }
  3. doccano

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

    doccano
  4. FileCodeBox

    Анонимный обмен текстом и файлами по коду доступа. Сервис на FastAPI и SQLite3 позволяет делиться файлами и получать их по коду без регистрации.

    FileCodeBox
  5. python-systemd-tutorial

    Руководство по созданию служб systemd на Python. Во многих дистрибутивах Linux systemd управляет службами, включая запуск при загрузке, автоматический перезапуск и фоновую работу. Проект объясняет основы и содержит пример Python-скрипта и unit-файла, на которых можно построить свою службу.

    if __name__ == '__main__':
        import time
        import systemd.daemon
    
        print('Starting up ...')
        time.sleep(10)
        print('Startup complete')
        systemd.daemon.notify('READY=1')
    
        while True:
            print('Hello from the Python Demo Service')
            time.sleep(5)

Проекты на Rust

  1. rust-raspberrypi-OS-tutorials

    Руководство по разработке встраиваемой ОС на Rust. Шаг за шагом оно помогает написать с нуля полнофункциональное ядро: создать консоль для последовательного порта, настроить виртуальную память и обработку аппаратных исключений. Весь код запускается на Raspberry Pi 3 и 4.

    rust-raspberrypi-OS-tutorials
  2. spacedrive

    Кроссплатформенный файловый менеджер на Rust. В основе лежит виртуальная распределённая файловая система VDFS, объединяющая устройства с macOS, Windows, Linux, iOS и Android для общего управления файлами. На момент публикации проект ещё разрабатывался, а клиент нужно было собирать самостоятельно.

    spacedrive

Проекты на Swift

  1. Plash

    Веб-сайт вместо обоев рабочего стола Mac. Приложение для macOS позволяет установить фоном не только сайт с изображениями, но и страницу новостей или прогноза погоды.

    Plash

Искусственный интеллект

  1. DeOldify

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

    DeOldify
  2. wandb

    Лёгкий инструмент визуализации машинного обучения. Позволяет отслеживать, сравнивать и наглядно представлять эксперименты по машинному обучению, добавив всего несколько строк кода.

    import wandb
    
    # 1. Start a W&B run
    wandb.init(project="gpt3")
    
    # 2. Save model inputs and hyperparameters
    config = wandb.config
    config.learning_rate = 0.01
    
    # Model training code here ...
    
    # 3. Log metrics over time to visualize performance
    for i in range(10):
        wandb.log({"loss": loss})
    wandb

Прочее

  1. chinese-independent-blogs

    Подборка независимых личных блогов на китайском языке. Даже если эпоха таких блогов прошла, у авторов, ценящих свободу, остаётся собственное пространство.

  2. CSrankings

    Неофициальный рейтинг ведущих вузов в области компьютерных наук. Один из главных критериев — число работ преподавателей, опубликованных на ведущих конференциях по разным направлениям информатики.

    CSrankings
  3. FlutterDouBan

    Клиент Douban (китайского сервиса о книгах, кино и музыке) на Flutter. Воспроизводит главную страницу приложения, разделы книг, фильмов и музыки, группы, магазин и личный кабинет.

    FlutterDouBan
  4. portal_calendar

    Самодельный календарь с экраном на электронных чернилах. Устройство на ESP32 годами работает от четырёх батареек AAA и может показывать погоду через OpenWeatherMap.

    portal_calendar
  5. relationship

    Калькулятор родственных связей и обращений в Китае. Помогает разобраться в сложной системе китайского родства и пересчитывать связи между родственниками в принятые обращения.

    relationship

Открытые книги

  1. hello-algo

    Вводная книга по структурам данных и алгоритмам с анимациями. «Привет, алгоритм» (Hello,算法) объясняет структуры данных и классические алгоритмы с помощью анимаций и кода. Материал даётся постепенно и доступен онлайн с компьютера и телефона.

    hello-algo