Windows 95 в Electron и открытый марсоход NASA

Выпуск № 57 ·

Проекты на C

  1. ngx_waf

    Модуль межсетевого экрана для Nginx. Простой в использовании инструмент без сложной настройки с полезными возможностями:

    • Чёрные и белые списки для IPv4, IPv6 и диапазонов IP-адресов.
    • Защита от частых запросов (CC): автоматическая временная блокировка IP-адреса.
    • Чёрные списки для GET, POST, URL и Cookie с поддержкой регулярных выражений.
    ngx_waf

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

  1. fast-cpp-csv-parser

    Библиотека для чтения CSV-файлов на C++, состоящая только из заголовочных файлов. Пример кода:

    # include "csv.h"
    
    int main(){
      io::CSVReader<3> in("ram.csv");
      in.read_header(io::ignore_extra_column, "vendor", "size", "speed");
      std::string vendor; int size; double speed;
      while(in.read_row(vendor, size, speed)){
        // 对 ram.csv 文件中的数据,做你想做的事情吧!
      }
    }
  2. godot

    Многофункциональный игровой движок с открытым кодом. Изначально Godot был движком для 2D-игр, а недавно получил возможности для 3D. По сравнению со зрелыми коммерческими движками UE4 и Unity он ещё молод, особенно в части 3D. При этом он прост в освоении и разработке: сообщество активно, документация подробная, примеров кода достаточно. Поэтому Godot удобен начинающим разработчикам игр. Весь исходный код движка открыт: можно изучать его и вносить изменения, а не ограничиваться игровой логикой. Перспективный движок для тех, кто хочет научиться создавать игры.

    godot
  3. UNO

    Консольная карточная игра UNO на C++. Поддерживает игру против компьютера и по сети. Для сетевой части используется Asio; проект написан на современном C++ и пробует возможности C++17. Сервер и клиент реализованы отдельно, а простой код подойдёт новичкам в C++. Поклонникам UNO стоит попробовать.

    UNO

Проекты на CSS

  1. water.css

    CSS-фреймворк для простых страниц и демонстрационных сайтов.

    water.css

Проекты на Go

  1. fyne

    Кроссплатформенная библиотека для графических интерфейсов на Go. Если хотите писать приложения с интерфейсом на Go, начать можно так:

    安装
    $ go get fyne.io/fyne
    运行一个 demo
    $ go get fyne.io/fyne/cmd/fyne_demo/
    $ fyne_demo
    fyne
  2. golearn

    Фреймворк машинного обучения на Go. Попробуйте запустить модель:

    cd $GOPATH/src/github.com/sjwhitworth/golearn/examples/knnclassifier
    go run knnclassifier_iris.go

Проекты на Java

  1. keepass2android

    Менеджер паролей для Android с открытым кодом. Скачать. Возможности:

    • Достаточно один раз ввести надёжный пароль — длинный или случайный.
    • Работает почти со всеми браузерами Android.
    • Читает и записывает файлы .kdbx.
    • Позволяет редактировать записи, включая дополнительные текстовые поля, вложения и теги.
    • И другие функции.
    keepass2android
  2. PrettyZoo

    Красивое настольное приложение для ZooKeeper на Java. Графический клиент написан на JDK 11 и JavaFX; объём кода умеренный, поэтому проект подойдёт тем, кто учится создавать приложения на JavaFX. Удобен для подключения к серверу ZooKeeper и просмотра данных.

    PrettyZoo
  3. vueblog

    Лёгкий проект блога на Java. Построен на Spring Boot и Vue; подробная документация и обучающие видео помогут разобраться даже тем, кто недавно освоил Java. Свой блог, которым управляешь сам, пригодится любому техническому специалисту.

    vueblog

Проекты на JavaScript

  1. Ant-Forest

    Скрипт на Auto.js для автоматического сбора энергии в Ant Forest — экологической игре сервиса Ant Financial. Автор уделил много внимания качеству реализации и решил несколько задач:

    1. Энергетические шары нельзя распознать по данным элементов интерфейса — используется распознавание изображений на основе преобразования Хафа.
    2. Работа скрипта может прерываться — обработчики событий и расширения повышают устойчивость.
    3. Скрипт раньше выполнялся только один раз — добавлены повторная проверка и запуск по расписанию.
    4. Разрешения и пропорции экранов различаются — применяется масштабирование с сохранением пропорций или фиксированной ширины.
    Ant-Forest
  2. h5-Dooring

    Многофункциональная визуальная платформа для создания H5-страниц. Позволяет собирать страницы в графическом редакторе. Основной стек — React, серверная часть написана на Node.js. Среди множества подобных инструментов этот стоит попробовать: он бесплатный, с открытым кодом и широким набором функций.

    h5-Dooring
  3. tui.image-editor

    Многофункциональный редактор изображений. Поддерживает обрезку, поворот, рисование и другие операции. Есть компоненты для Vue и React, поэтому редактор легко встроить в свой проект.

    tui.image-editor
  4. windows95

    Windows 95, реализованная на Electron. Здесь воссоздана вся операционная система, включая игры. Хотите снова сыграть в «Сапёра» из Windows 95? Скачайте и установите приложение.

    windows95
  5. x-spreadsheet

    Лёгкая библиотека электронных таблиц для веба на JavaScript. Поддерживает основные операции с таблицами и формулы. Есть подробная документация на китайском и онлайн-демо.

    x-spreadsheet

Проекты на Objective-C

  1. LuLu

    Бесплатный межсетевой экран для macOS с открытым кодом.

    LuLu

Проекты на PHP

  1. humhub

    Социальная платформа с открытым кодом на PHP. Первый Facebook Марк Цукерберг тоже написал на PHP — об этом напоминает фильм «Социальная сеть». С humhub даже человек без навыков программирования может создать свою социальную сеть: следуя подсказкам, автор справился менее чем за минуту. Посмотреть результат.

    humhub
  2. phpbrew

    Инструмент для сборки, установки и управления несколькими версиями PHP. Позволяет удобно переключаться между ними. Возможности:

    • Настройки сведены к Variants, поэтому не нужно беспокоиться о путях.
    • Интегрируется с bash, zsh и другими оболочками для быстрого переключения версий.
    • Упрощает установку и включение расширений PHP.

Проекты на Python

  1. pgcli

    Консольный клиент PostgreSQL с подсветкой синтаксиса и автодополнением. Просто устанавливается и быстро осваивается. Если вы пользовались стандартным консольным клиентом Postgres, удобство pgcli сразу станет заметно.

    pgcli
  2. python-patterns

    Подборка паттернов проектирования на Python и примеров их применения.

    python-patterns
  3. pythonguis-examples

    Коллекция небольших настольных приложений на PyQt. Поможет тем, кто хочет писать графические программы на Python. Среди примеров — игра «Сапёр».

    pythonguis-examples

Проекты на Rust

  1. bat

    Консольная утилита на замену cat. Помимо просмотра файлов, bat подсвечивает синтаксис и показывает изменения Git. Установка на macOS: brew install bat. После знакомства с bat возвращаться к cat вряд ли захочется.

    bat
  2. jpeg_tutorial

    Руководство по созданию JPEG-декодера с примерами кода на Rust.

Проекты на Swift

  1. Pine

    Бесплатный, лёгкий и лаконичный редактор Markdown для macOS. Возможности:

    • Темы оформления.
    • Формулы LaTeX.
    • Автосохранение.
    • Настраиваемые шрифты.
    • Подсчёт слов и другие средства анализа текста.
    • И многое другое.
    Pine
  2. Publish

    Генератор статических сайтов для разработчиков на Swift. Позволяет построить весь сайт на Swift, поддерживает темы, плагины и гибкую настройку. Пример сайта. Установка и первый запуск:

    $ git clone https://github.com/JohnSundell/Publish.git
    $ cd Publish
    $ make
    $ mkdir MyWebsite
    $ cd MyWebsite
    $ publish new
    Publish

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

  1. pulse

    Генерирует похожее лицо по изображению, на котором лицо скрыто мозаикой. Это не восстановление оригинала; инструмент работает только с лицами.

    pulse
  2. Surface-Defect-Detection

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

    Surface-Defect-Detection

Прочее

  1. neofetch

    Консольная утилита для отображения сведений об операционной системе. Поддерживает почти 150 ОС.

    neofetch
  2. open-source-rover

    Открытые чертежи и код марсохода от NASA для любителей техники. С помощью проекта можно собрать собственного марсохода на недорогом Raspberry Pi: нужные детали легко купить. Для дистанционного управления подойдут готовый контроллер Xbox или смартфон, что снижает стоимость. Интересный проект для любителей электроники и работы руками.

    open-source-rover
  3. sql-style-guide

    Рекомендации по стилю написания SQL-запросов. Например:

    -- Good
    select *
    from users
    where email = 'example@domain.com'
    
    -- Bad
    select *
    from users
    where email = "example@domain.com"
  4. Web-Dev-For-Beginners

    Открытый курс Microsoft по веб-разработке. В нём 24 урока, но пока он доступен только на английском.

    Web-Dev-For-Beginners

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

  1. pure-bash-bible

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

    upper() {
        # Usage: upper "string"
        printf '%s\n' "${1^^}"
    }
    
    $ upper "hello"
    HELLO
    pure-bash-bible