Рабочий стол в браузере и терминал для команды

Выпуск № 93 ·

Проекты на C

  1. rsync

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

Проекты на C#

  1. Kavita

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

    Kavita
  2. LittleBigMouse

    Плавное перемещение курсора между мониторами в Windows. При разных разрешениях указатель может «прыгать» на границе экранов: например, при переходе с середины монитора 4K на экран 2K оказаться у нижнего края. Утилита устраняет этот скачок.

    LittleBigMouse

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

  1. Modern-CPP-Programming

    Курс по современному C++. Рассчитан на тех, кто уже знаком с программированием; охватывает основы языка, расширенные возможности и ключевые концепции C++.

  2. WechatExporter

    Экспорт и резервное копирование переписки WeChat. Сохраняет чаты в формате HTML, PDF или обычного текста; работает в Windows и macOS.

    WechatExporter

Проекты на Go

  1. mailpit

    Инструмент для тестирования электронной почты с API. Небольшая быстрая кроссплатформенная программа работает как SMTP-сервер, принимает тестовые письма и показывает их в веб-интерфейсе, в том числе в представлении разных устройств. API подходит для автоматических интеграционных тестов.

    mailpit
  2. muffet

    Проверка ссылок на сайте на Go. Многопоточная утилита рекурсивно обходит страницы и проверяет ссылки в тегах a, img, link и script. Проста в использовании и работает быстро.

    muffet
  3. one-api

    Система управления и распределения API языковых моделей. Объединяет разные модели под интерфейсом, похожим на OpenAI API. Поставляется одним файлом и поддерживает балансировку нагрузки, токены, коды пополнения, группы пользователей, просмотр квот и бонусы за приглашения; подходит для собственного сервиса на базе ChatGPT.

    one-api
  4. zen-desktop

    Блокировщик рекламы для компьютера. Приложение на Go и Wails создаёт прокси-сервер и перехватывает HTTP-запросы всех программ, блокируя рекламу и отслеживание. Работает в Windows, macOS и Linux.

    zen-desktop

Проекты на Java

  1. sensitive-word

    Библиотека Java для фильтрации нежелательных слов. Высокопроизводительный фильтр на основе алгоритма DFA со словарём более 60 000 записей. Поддерживает собственные слова, белый список, правила замены, разные записи цифр и игнорирование повторов.

    sensitive-word
  2. SMS4J

    Фреймворк Java для отправки SMS через разные сервисы. Объединяет множество китайских провайдеров и упрощает подключение их SDK: для отправки сообщений достаточно изменить конфигурацию.

    @RestController
    @RequestMapping("/test/")
    public class DemoController {
    
        // 测试发送固定模板短信
        @RequestMapping("/")
        public void doLogin(String username, String password) {
             //阿里云向此手机号发送短信
            SmsFactory.createSmsBlend(SupplierType.ALIBABA).sendMessage("18888888888","123456");
            //华为短信向此手机号发送短信
            SmsFactory.createSmsBlend(SupplierType.HUAWEI).sendMessage("16666666666","000000");
        }
    }

Проекты на JavaScript

  1. daedalOS

    Рабочий стол в браузере. Написанная на JavaScript среда в стиле Windows включает меню «Пуск», анимированные обои, терминал, видеоплеер, трёхмерный пинбол, просмотр Markdown и браузер.

    daedalOS
  2. miniPaint

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

    miniPaint
  3. multipleWindow3dScene

    Эффект «квантовой запутанности» между окнами браузера. В квантовой механике запутанные частицы остаются связанными независимо от расстояния между ними. Проект иллюстрирует эту идею в нескольких окнах с помощью Three.js и localStorage.

    multipleWindow3dScene
  4. omnivore

    Бесплатный сервис отложенного чтения для разных устройств. Приложение на TypeScript и Next.js сохраняет статьи, письма и документы, а также синхронизирует материалы с Obsidian и другими системами личных знаний. Есть клиенты для iOS и Android и расширение браузера.

    omnivore
  5. vue-naive-admin

    Лаконичный шаблон панели управления на Vue. Открытый бесплатный шаблон, разрешённый для коммерческого использования, построен на Vue 3, Vite 4, Pinia, Unocss и Naive UI. Он лёгкий, просто осваивается и подходит для небольших и личных проектов.

    vue-naive-admin

Проекты на Kotlin

  1. Calendar

    Гибко настраиваемая библиотека календаря для Android. Включает пример приложения, режим недели или месяца, ограничение диапазона дат, горизонтальную и вертикальную прокрутку — календарь можно оформить под свои задачи.

    Calendar

Проекты на PHP

  1. BookStack

    Простая wiki-платформа, готовая к работе после установки. Построена на PHP и Laravel; поддерживает поиск, редактор Markdown, рисование, разные языки и аутентификацию.

    BookStack

Проекты на Python

  1. django-tailwind

    Интеграция Tailwind CSS с Django. Позволяет легко использовать Tailwind CSS в проекте Django и включает официальные плагины для типографики, форм и ограничения числа строк.

    django-tailwind
  2. frigate

    Открытая система видеонаблюдения с распознаванием объектов в реальном времени. С помощью OpenCV и TensorFlow локально анализирует видео с IP-камер, отправляет оповещения и сохраняет записи с обнаруженными объектами по заданным правилам.

    frigate
  3. sqlglot

    Многофункциональный парсер SQL. Библиотека на Python разбирает, преобразует и оптимизирует запросы: форматирует SQL и переводит его между 20 диалектами. С её помощью можно создавать собственные парсеры, анализировать запросы и программно собирать SQL.

    import sqlglot
    
    # SQL 转 Spark
    sql = """WITH baz AS (SELECT a, c FROM foo WHERE a = 1) SELECT f.a, b.b, baz.c, CAST("b"."a" AS REAL) d FROM foo f JOIN bar b ON f.a = b.a LEFT JOIN baz ON f.a = baz.a"""
    print(transpile(sql, write="spark", identify=True, pretty=True)[0])
  4. tablib

    Библиотека Python для работы с табличными данными. Приводит таблицы разных форматов к единому объекту Dataset; поддерживает динамические столбцы, метки, фильтрацию и форматы CSV, DataFrame, JSON, YAML и XLS.

    import tablib
    
    data = tablib.Dataset(headers=['First Name', 'Last Name', 'Age'])
    
    for i in [('Kenneth', 'Reitz', 22), ('Bessie', 'Monke', 21)]:
        data.append(i)
    
    # 将数据输出成 json 格式
    print(data.export('json'))
    # [{"Last Name": "Reitz", "First Name": "Kenneth", "Age": 22}, {"Last Name": "Monke", "First Name": "Bessie", "Age": 21}]
    
    # df 对象
    data.export('df')
    #   First Name Last Name  Age
    # 0    Kenneth     Reitz   22
    # 1     Bessie     Monke   21
  5. talebook

    Удобная личная веб-библиотека. Система управления книгами на базе Calibre использует Tornado на сервере и Vue.js в интерфейсе. Легко устанавливается, поддерживает чтение онлайн, импорт книг, отправку на Kindle и закрытый режим.

    talebook

Проекты на Rust

  1. sshx

    Безопасный веб-терминал для совместной работы. Одной командой открывает доступ к терминалу нескольким участникам. Есть одновременная работа, несколько окон, удалённые курсоры, чат и автоматическое переподключение; пригодится для обучения и удалённой отладки.

    sshx
  2. tailspin

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

    tailspin
  3. Weylus

    Планшет как устройство ввода для компьютера. Позволяет использовать его как внешний экран, сенсорную панель и клавиатуру. Работает с Windows, Linux и macOS.

    Weylus

Проекты на Swift

  1. visionOS_30Days

    Тридцать дней знакомства с разработкой для visionOS. visionOS — система гарнитуры смешанной реальности Apple Vision Pro; в проекте собраны 30 примеров кода для неё.

    visionOS_30Days

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

  1. backgroundremover

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

    backgroundremover
  2. machine-learning-roadmap

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

    machine-learning-roadmap
  3. PokemonRedExperiments

    Обучение ИИ играть в Pokémon Red с подкреплением. Автор с нуля обучил агента на Python и RL, а также подготовил видео с объяснением и инструкции по локальному запуску и настройке обучения.

    PokemonRedExperiments
  4. supervision

    Библиотека для задач компьютерного зрения. Упрощает обнаружение, классификацию, разметку и отслеживание объектов. Достаточно загрузить набор данных и модель, чтобы анализировать изображения и видео или подсчитывать обнаруженные объекты в заданной области.

    import cv2
    import supervision as sv
    from ultralytics import YOLO
    
    image = cv2.imread(...)
    model = YOLO('yolov8s.pt')
    result = model(image)[0]
    detections = sv.Detections.from_ultralytics(result)
    
    print(len(detections))
    # 5
    supervision

Прочее

  1. dbgate

    Настольный клиент для SQL- и NoSQL-баз данных. Поддерживает MySQL, PostgreSQL, SQL Server, MongoDB, SQLite и Redis; доступен для Windows, Linux и macOS.

    dbgate
  2. Detect-It-Easy

    Определение типа бинарных файлов. Быстро распознаёт формат файла, архитектуру и компилятор. Поддержка множества форматов помогает при обратной разработке и анализе безопасности; работает в Windows, Linux и macOS.

    Detect-It-Easy
  3. github-chinese

    Расширение для перевода интерфейса GitHub на китайский. Автоматически переводит меню, заголовки, кнопки и другие общие элементы сайта, помогая новичкам освоиться на GitHub.

    github-chinese
  4. HumanSystemOptimization

    Подробное руководство по улучшению здоровья. Автор советует следить за длительностью и качеством сна, не курить, ежедневно двигаться и сократить потребление сахара.

  5. wondershaper

    Ограничение сетевой скорости в Linux. Утилита использует команду tc из iproute, работает с несколькими сетевыми картами и позволяет задавать предельную скорость загрузки и отдачи.

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

  1. Node.js-Troubleshooting-Guide

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

  2. pml-book

    «Вероятностное машинное обучение». Проект объединяет три книги Кевина Мёрфи: «Машинное обучение: вероятностный взгляд», «Вероятностное машинное обучение: введение» и «Вероятностное машинное обучение: продвинутые темы». В них есть теория, современные исследования, иллюстрации, примеры и упражнения.