1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- <!doctype html><html lang=ru class=color-toggle-hidden><head><meta charset=UTF-8><meta name=referrer content="no-referrer"><meta name=viewport content="width=device-width,initial-scale=1"><meta name=color-scheme content="light dark"><meta name=generator content="Hugo 0.138.0"><meta name=description content=" Конфигурация и всё такое Логгирование UI Пользовательский интерфейс в терминале GUI Консоль Работа с БД Работа с json, XML HTML, парсинг сайтов Работа с файлами Тестирование Генерация данных Шаблоны HTTP WEB-приложения OpenAPI Работа с сетью Работа со строками Работа со временем Генерация различных ID Работа с hardware Сетевые framework Списки и наборы Игры Графика Видео Статистика и математика Обработка данных на потоке и прочее Парсеры Коллекции Встраивание ресурсов (теперь не актуально, так как с версии 1.6 есть встроенный механизм) Вспомогательные утилиты Работа со звуком Мониторинг OpenCV Офис goroutines Шифровние События Интеграция с другими ЯП Разное Конфигурация и всё такое viper Чтение и сохранение конфигурации в различных форматах. Работа с командной строкой: создание флагов командной строки в POSIX формате, автоматическая генерация “как использовать”. Kingpin - ещё одна реализация работы с флагами. Godoc. Flaggy. Также работа с командной, возможность создания подкоманд. Godoc. Go-Config. Позволяет собирать конфигурацию из различных источников (файлы, командная строка и т.д.). Godoc. Описание в блоге. Gonfig - позволяет читать конфигурацию из json и переменных окружения. Venom. Также позволяет конфигурировать из различных источников. GoDoc. Реализация формата HOCON configuration. GoDoc. Yaml - работа с YAML от Canonical. API. Blog. promptui - позволяет запрашивать у пользователя информацию в процессе работает. Интегрируется, например с cobra и другими подобными библиотеками. GoDoc. cli - ещё одна библиотека для расширения флагов командной строки. GoDoc. koanf - позиционируется как более легковесный конкурент viper. Логгирование Библиотека от Google Glog. Документация. Библиотека от juju Loggo. Документация. Библиотека от Uber Zap. Документация. Logrus. Наверное наиболее популярный. Используется в Docker. API. Вроде как самая маленькая библиотека go-logging. API. zerolog - логирование в формате json. GoDoc. Также может логировать в нормальном виде. go-spew - красивый вывод в консоль данных для отладки. GoDoc. httpretty - удобное логирование в консоль http запросов как на сервере, так и на клиенте. GoDoc. zlog - логер позволяет скрывать чувствительную информацию из логирования. GoDoc. Log - простенький логер с подсветкой вывода от создателей Bubble Tea. GoDoc. UI Пользовательский интерфейс в терминале Отличная статья с обзором разных библиотек для написания text-based GUI."><title>Полезные библиотеки | Max Wiki Site</title>
- <link rel=icon type=image/svg+xml href=/favicon/favicon.svg><link rel=icon type=image/png sizes=32x32 href=/favicon/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon/favicon-16x16.png><meta property="og:title" content="Полезные библиотеки"><meta property="og:site_name" content="Max Wiki Site"><meta property="og:description" content=" Конфигурация и всё такое Логгирование UI Пользовательский интерфейс в терминале GUI Консоль Работа с БД Работа с json, XML HTML, парсинг сайтов Работа с файлами Тестирование Генерация данных Шаблоны HTTP WEB-приложения OpenAPI Работа с сетью Работа со строками Работа со временем Генерация различных ID Работа с hardware Сетевые framework Списки и наборы Игры Графика Видео Статистика и математика Обработка данных на потоке и прочее Парсеры Коллекции Встраивание ресурсов (теперь не актуально, так как с версии 1.6 есть встроенный механизм) Вспомогательные утилиты Работа со звуком Мониторинг OpenCV Офис goroutines Шифровние События Интеграция с другими ЯП Разное Конфигурация и всё такое viper Чтение и сохранение конфигурации в различных форматах. Работа с командной строкой: создание флагов командной строки в POSIX формате, автоматическая генерация “как использовать”. Kingpin - ещё одна реализация работы с флагами. Godoc. Flaggy. Также работа с командной, возможность создания подкоманд. Godoc. Go-Config. Позволяет собирать конфигурацию из различных источников (файлы, командная строка и т.д.). Godoc. Описание в блоге. Gonfig - позволяет читать конфигурацию из json и переменных окружения. Venom. Также позволяет конфигурировать из различных источников. GoDoc. Реализация формата HOCON configuration. GoDoc. Yaml - работа с YAML от Canonical. API. Blog. promptui - позволяет запрашивать у пользователя информацию в процессе работает. Интегрируется, например с cobra и другими подобными библиотеками. GoDoc. cli - ещё одна библиотека для расширения флагов командной строки. GoDoc. koanf - позиционируется как более легковесный конкурент viper. Логгирование Библиотека от Google Glog. Документация. Библиотека от juju Loggo. Документация. Библиотека от Uber Zap. Документация. Logrus. Наверное наиболее популярный. Используется в Docker. API. Вроде как самая маленькая библиотека go-logging. API. zerolog - логирование в формате json. GoDoc. Также может логировать в нормальном виде. go-spew - красивый вывод в консоль данных для отладки. GoDoc. httpretty - удобное логирование в консоль http запросов как на сервере, так и на клиенте. GoDoc. zlog - логер позволяет скрывать чувствительную информацию из логирования. GoDoc. Log - простенький логер с подсветкой вывода от создателей Bubble Tea. GoDoc. UI Пользовательский интерфейс в терминале Отличная статья с обзором разных библиотек для написания text-based GUI."><meta property="og:type" content="article"><meta property="og:url" content="https://maxtar.github.io/programming/go/useful-libs/"><meta property="article:section" content="Programming"><meta property="article:published_time" content="2022-10-05T00:55:20+03:00"><meta property="article:modified_time" content="2022-10-05T00:55:20+03:00"><meta name=twitter:card content="summary"><meta name=twitter:title content="Полезные библиотеки"><meta name=twitter:description content=" Конфигурация и всё такое Логгирование UI Пользовательский интерфейс в терминале GUI Консоль Работа с БД Работа с json, XML HTML, парсинг сайтов Работа с файлами Тестирование Генерация данных Шаблоны HTTP WEB-приложения OpenAPI Работа с сетью Работа со строками Работа со временем Генерация различных ID Работа с hardware Сетевые framework Списки и наборы Игры Графика Видео Статистика и математика Обработка данных на потоке и прочее Парсеры Коллекции Встраивание ресурсов (теперь не актуально, так как с версии 1.6 есть встроенный механизм) Вспомогательные утилиты Работа со звуком Мониторинг OpenCV Офис goroutines Шифровние События Интеграция с другими ЯП Разное Конфигурация и всё такое viper Чтение и сохранение конфигурации в различных форматах. Работа с командной строкой: создание флагов командной строки в POSIX формате, автоматическая генерация “как использовать”. Kingpin - ещё одна реализация работы с флагами. Godoc. Flaggy. Также работа с командной, возможность создания подкоманд. Godoc. Go-Config. Позволяет собирать конфигурацию из различных источников (файлы, командная строка и т.д.). Godoc. Описание в блоге. Gonfig - позволяет читать конфигурацию из json и переменных окружения. Venom. Также позволяет конфигурировать из различных источников. GoDoc. Реализация формата HOCON configuration. GoDoc. Yaml - работа с YAML от Canonical. API. Blog. promptui - позволяет запрашивать у пользователя информацию в процессе работает. Интегрируется, например с cobra и другими подобными библиотеками. GoDoc. cli - ещё одна библиотека для расширения флагов командной строки. GoDoc. koanf - позиционируется как более легковесный конкурент viper. Логгирование Библиотека от Google Glog. Документация. Библиотека от juju Loggo. Документация. Библиотека от Uber Zap. Документация. Logrus. Наверное наиболее популярный. Используется в Docker. API. Вроде как самая маленькая библиотека go-logging. API. zerolog - логирование в формате json. GoDoc. Также может логировать в нормальном виде. go-spew - красивый вывод в консоль данных для отладки. GoDoc. httpretty - удобное логирование в консоль http запросов как на сервере, так и на клиенте. GoDoc. zlog - логер позволяет скрывать чувствительную информацию из логирования. GoDoc. Log - простенький логер с подсветкой вывода от создателей Bubble Tea. GoDoc. UI Пользовательский интерфейс в терминале Отличная статья с обзором разных библиотек для написания text-based GUI."><script type=application/ld+json>{"@context":"http://schema.org","@type":"TechArticle","articleSection":"Programming","name":"Полезные библиотеки","url":"https://maxtar.github.io/programming/go/useful-libs/","headline":"Полезные библиотеки","description":" Конфигурация и всё такое Логгирование UI Пользовательский интерфейс в терминале GUI Консоль Работа с БД Работа с json, XML HTML, парсинг сайтов Работа с файлами Тестирование Генерация данных Шаблоны HTTP WEB-приложения OpenAPI Работа с сетью Работа со строками Работа со временем Генерация различных ID Работа с hardware Сетевые framework Списки и наборы Игры Графика Видео Статистика и математика Обработка данных на потоке и прочее Парсеры Коллекции Встраивание ресурсов (теперь не актуально, так как с версии 1.6 есть встроенный механизм) Вспомогательные утилиты Работа со звуком Мониторинг OpenCV Офис goroutines Шифровние События Интеграция с другими ЯП Разное Конфигурация и всё такое viper Чтение и сохранение конфигурации в различных форматах. Работа с командной строкой: создание флагов командной строки в POSIX формате, автоматическая генерация “как использовать”. Kingpin - ещё одна реализация работы с флагами. Godoc. Flaggy. Также работа с командной, возможность создания подкоманд. Godoc. Go-Config. Позволяет собирать конфигурацию из различных источников (файлы, командная строка и т.д.). Godoc. Описание в блоге. Gonfig - позволяет читать конфигурацию из json и переменных окружения. Venom. Также позволяет конфигурировать из различных источников. GoDoc. Реализация формата HOCON configuration. GoDoc. Yaml - работа с YAML от Canonical. API. Blog. promptui - позволяет запрашивать у пользователя информацию в процессе работает. Интегрируется, например с cobra и другими подобными библиотеками. GoDoc. cli - ещё одна библиотека для расширения флагов командной строки. GoDoc. koanf - позиционируется как более легковесный конкурент viper. Логгирование Библиотека от Google Glog. Документация. Библиотека от juju Loggo. Документация. Библиотека от Uber Zap. Документация. Logrus. Наверное наиболее популярный. Используется в Docker. API. Вроде как самая маленькая библиотека go-logging. API. zerolog - логирование в формате json. GoDoc. Также может логировать в нормальном виде. go-spew - красивый вывод в консоль данных для отладки. GoDoc. httpretty - удобное логирование в консоль http запросов как на сервере, так и на клиенте. GoDoc. zlog - логер позволяет скрывать чувствительную информацию из логирования. GoDoc. Log - простенький логер с подсветкой вывода от создателей Bubble Tea. GoDoc. UI Пользовательский интерфейс в терминале Отличная статья с обзором разных библиотек для написания text-based GUI.","wordCount":"2156","inLanguage":"ru","isFamilyFriendly":"true","mainEntityOfPage":{"@type":"WebPage","@id":"https://maxtar.github.io/programming/go/useful-libs/"},"keywords":["go","программирование"],"copyrightHolder":"Max Wiki Site","copyrightYear":"2022","dateCreated":"2022-10-05T00:55:20.00Z","datePublished":"2022-10-05T00:55:20.00Z","dateModified":"2022-10-05T00:55:20.00Z","publisher":{"@type":"Organization","name":"Max Wiki Site","url":"https://maxtar.github.io/","logo":{"@type":"ImageObject","url":"https://maxtar.github.io/brand.svg","width":"32","height":"32"}}}</script><script src=/js/colortheme-5cd55a83.bundle.min.js></script><script src=/js/main-09678822.bundle.min.js></script><link rel=preload as=font href=/fonts/Metropolis.woff2 type=font/woff2 crossorigin=anonymous><link rel=preload as=font href=/fonts/LiberationSans.woff2 type=font/woff2 crossorigin=anonymous><link rel=preload href=/main-c93819e1.min.css as=style><link rel=stylesheet href=/main-c93819e1.min.css media=all><link rel=preload href=/mobile-79ddc617.min.css as=style><link rel=stylesheet href=/mobile-79ddc617.min.css media="screen and (max-width: 45rem)"><link rel=preload href=/print-735ccc12.min.css as=style><link rel=stylesheet href=/print-735ccc12.min.css media=print><link rel=preload href=/custom.css as=style><link rel=stylesheet href=/custom.css media=all><link href=https://maxtar.github.io/programming/go/useful-libs/ rel=canonical type=text/html></head><body itemscope itemtype=https://schema.org/WebPage><svg class="svg-sprite" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><svg viewBox="-7.27 -7.27 38.55 38.55" id="gdoc_arrow_back"><path d="M24 10.526v2.947H5.755l8.351 8.421-2.105 2.105-12-12 12-12 2.105 2.105-8.351 8.421H24z"/></svg><svg viewBox="-7.27 -7.27 38.55 38.55" id="gdoc_arrow_left_alt"><path d="M5.965 10.526V6.035L0 12l5.965 5.965v-4.491H24v-2.947H5.965z"/></svg><svg viewBox="-7.27 -7.27 38.55 38.55" id="gdoc_arrow_right_alt"><path d="M18.035 10.526V6.035L24 12l-5.965 5.965v-4.491H0v-2.947h18.035z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_bitbucket"><path d="M15.905 13.355c.189 1.444-1.564 2.578-2.784 1.839-1.375-.602-1.375-2.784-.034-3.403 1.151-.705 2.818.223 2.818 1.564zm1.907-.361c-.309-2.44-3.076-4.056-5.328-3.042-1.426.636-2.389 2.148-2.32 3.747.086 2.097 2.08 3.815 4.176 3.626s3.729-2.234 3.472-4.331zm4.108-9.315c-.756-.997-2.045-1.169-3.179-1.358-3.214-.516-6.513-.533-9.727.034-1.066.172-2.269.361-2.939 1.323 1.1 1.031 2.664 1.186 4.073 1.358 2.544.327 5.156.344 7.699.017 1.426-.172 3.008-.309 4.073-1.375zm.979 17.788c-.481 1.684-.206 3.953-1.994 4.932-3.076 1.701-6.806 1.89-10.191 1.289-1.787-.327-3.884-.894-4.864-2.578-.43-1.65-.705-3.334-.98-5.018l.103-.275.309-.155c5.121 3.386 12.288 3.386 17.427.0.808.241.206 1.22.189 1.805zM26.01 4.951c-.584 3.764-1.255 7.51-1.908 11.257-.189 1.1-1.255 1.719-2.148 2.183-3.214 1.615-6.96 1.89-10.483 1.512-2.389-.258-4.829-.894-6.771-2.389-.911-.705-.911-1.908-1.083-2.922-.602-3.523-1.289-7.046-1.719-10.604.206-1.547 1.942-2.217 3.231-2.698C6.848.654 8.686.362 10.508.19c3.884-.378 7.854-.241 11.618.859 1.341.395 2.784.945 3.695 2.097.412.533.275 1.203.189 1.805z"/></svg><svg viewBox="-7.27 -7.27 38.55 38.55" id="gdoc_bookmark"><path d="M15.268 4.392q.868.0 1.532.638t.664 1.506v17.463l-7.659-3.268-7.608 3.268V6.536q0-.868.664-1.506t1.532-.638h10.876zm4.34 14.144V4.392q0-.868-.638-1.532t-1.506-.664H6.537q0-.868.664-1.532T8.733.0h10.876q.868.0 1.532.664t.664 1.532v17.412z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_brightness_auto"><path d="M16.846 18.938h2.382L15.22 7.785h-2.44L8.772 18.938h2.382l.871-2.44h3.95zm7.087-9.062L27.999 14l-4.066 4.124v5.809h-5.809L14 27.999l-4.124-4.066H4.067v-5.809L.001 14l4.066-4.124V4.067h5.809L14 .001l4.124 4.066h5.809v5.809zm-11.385 4.937L14 10.282l1.452 4.531h-2.904z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_brightness_dark"><path d="M14 21.435q3.079.0 5.257-2.178T21.435 14t-2.178-5.257T14 6.565q-1.51.0-3.079.697 1.917.871 3.108 2.701T15.22 14t-1.191 4.037-3.108 2.701q1.568.697 3.079.697zm9.933-11.559L27.999 14l-4.066 4.124v5.809h-5.809L14 27.999l-4.124-4.066H4.067v-5.809L.001 14l4.066-4.124V4.067h5.809L14 .001l4.124 4.066h5.809v5.809z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_brightness_light"><path d="M14 21.435q3.079.0 5.257-2.178T21.435 14t-2.178-5.257T14 6.565 8.743 8.743 6.565 14t2.178 5.257T14 21.435zm9.933-3.311v5.809h-5.809L14 27.999l-4.124-4.066H4.067v-5.809L.001 14l4.066-4.124V4.067h5.809L14 .001l4.124 4.066h5.809v5.809L27.999 14z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_check"><path d="M8.885 20.197 25.759 3.323l2.24 2.24L8.885 24.677.0 15.792l2.24-2.24z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_check_circle_outline"><path d="M14 25.239q4.601.0 7.92-3.319T25.239 14 21.92 6.08 14 2.761 6.08 6.08 2.761 14t3.319 7.92T14 25.239zM14 0q5.784.0 9.892 4.108T28 14t-4.108 9.892T14 28t-9.892-4.108T0 14t4.108-9.892T14 0zm6.441 7.822 1.972 1.972-11.239 11.239L4.207 14l1.972-1.972 4.995 4.995z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_cloud_off"><path d="M9.023 10.5H7q-1.914.0-3.281 1.395t-1.367 3.309 1.367 3.281T7 19.852h11.375zM3.5 4.976l1.477-1.477L24.5 23.022l-1.477 1.477-2.352-2.297H6.999q-2.898.0-4.949-2.051t-2.051-4.949q0-2.844 1.969-4.867t4.758-2.133zm19.086 5.578q2.242.164 3.828 1.832T28 16.351q0 3.008-2.461 4.758l-1.695-1.695q1.805-.984 1.805-3.063.0-1.422-1.039-2.461t-2.461-1.039h-1.75v-.602q0-2.68-1.859-4.539t-4.539-1.859q-1.531.0-2.953.711l-1.75-1.695Q11.431 3.5 14.001 3.5q2.953.0 5.496 2.078t3.09 4.977z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_code"><path d="M9.917 24.5a1.75 1.75.0 10-3.501.001 1.75 1.75.0 003.501-.001zm0-21a1.75 1.75.0 10-3.501.001A1.75 1.75.0 009.917 3.5zm11.666 2.333a1.75 1.75.0 10-3.501.001 1.75 1.75.0 003.501-.001zm1.75.0a3.502 3.502.0 01-1.75 3.026c-.055 6.581-4.721 8.039-7.82 9.023-2.898.911-3.846 1.349-3.846 3.117v.474a3.502 3.502.0 011.75 3.026c0 1.932-1.568 3.5-3.5 3.5s-3.5-1.568-3.5-3.5c0-1.294.711-2.424 1.75-3.026V6.526A3.502 3.502.0 014.667 3.5c0-1.932 1.568-3.5 3.5-3.5s3.5 1.568 3.5 3.5a3.502 3.502.0 01-1.75 3.026v9.06c.93-.456 1.914-.766 2.807-1.039 3.391-1.075 5.323-1.878 5.359-5.687a3.502 3.502.0 01-1.75-3.026c0-1.932 1.568-3.5 3.5-3.5s3.5 1.568 3.5 3.5z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_copy"><path d="M23.502 25.438V7.626H9.562v17.812h13.94zm0-20.315q1.013.0 1.787.745t.774 1.757v17.812q0 1.013-.774 1.787t-1.787.774H9.562q-1.013.0-1.787-.774t-.774-1.787V7.625q0-1.013.774-1.757t1.787-.745h13.94zM19.689.0v2.562H4.438v17.812H1.936V2.562q0-1.013.745-1.787T4.438.001h15.251z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_dangerous"><path d="M21.802 19.833 15.969 14l5.833-5.833-1.969-1.969L14 12.031 8.167 6.198 6.198 8.167 12.031 14l-5.833 5.833 1.969 1.969L14 15.969l5.833 5.833zM19.833.0 28 8.167v11.666L19.833 28H8.167L0 19.833V8.167L8.167.0h11.666z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_date"><path d="M27.192 28.844V11.192H4.808v17.652h22.384zm0-25.689q1.277.0 2.253.976t.976 2.253v22.459q0 1.277-.976 2.216t-2.253.939H4.808q-1.352.0-2.291-.901t-.939-2.253V6.385q0-1.277.939-2.253t2.291-.976h1.577V.001h3.23v3.155h12.769V.001h3.23v3.155h1.577zm-3.155 11.267v3.155h-3.23v-3.155h3.23zm-6.46.0v3.155h-3.155v-3.155h3.155zm-6.384.0v3.155h-3.23v-3.155h3.23z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_download"><path d="M2.866 28.209h26.269v3.79H2.866v-3.79zm26.268-16.925L16 24.418 2.866 11.284h7.493V.001h11.283v11.283h7.493z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_email"><path d="M28.845 9.615v-3.23L16 14.422 3.155 6.385v3.23L16 17.577zm0-6.46q1.277.0 2.216.977T32 6.385v19.23q0 1.277-.939 2.253t-2.216.977H3.155q-1.277.0-2.216-.977T0 25.615V6.385q0-1.277.939-2.253t2.216-.977h25.69z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_error_outline"><path d="M14 25.239q4.601.0 7.92-3.319T25.239 14 21.92 6.08 14 2.761 6.08 6.08 2.761 14t3.319 7.92T14 25.239zM14 0q5.784.0 9.892 4.108T28 14t-4.108 9.892T14 28t-9.892-4.108T0 14t4.108-9.892T14 0zm-1.38 6.967h2.761v8.413H12.62V6.967zm0 11.239h2.761v2.826H12.62v-2.826z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_fire"><path d="M17.689 21.998q-.32.32-.8.576t-.864.384q-1.152.384-2.272.032t-1.888-.992q-.128-.128-.096-.256t.16-.192q1.216-.384 1.92-1.216t.96-1.792q.192-.896-.064-1.728t-.384-1.728q-.128-.704-.096-1.376t.288-1.312q0-.128.128-.128t.192.064q.384.832.992 1.472t1.28 1.216 1.216 1.248.672 1.568q.064.384.064.704.064.96-.32 1.92t-1.088 1.536zm3.84-10.944q-.768-.704-1.6-1.28t-1.6-1.344q-1.536-1.536-2.016-3.584t.16-4.16q.128-.32-.096-.544t-.544-.096q-.768.32-1.44.768t-1.312.896q-1.984 1.664-3.136 3.936T8.633 10.51t.8 5.088q0 .128.032.256t.032.256q0 .576-.512.832t-1.024-.192q-.128-.192-.192-.32-1.024-1.28-1.376-2.912t-.096-3.232q.064-.384-.288-.576t-.608.128q-1.28 1.664-1.856 3.68t-.448 4.064q0 .576.096 1.184t.288 1.184q.448 1.536 1.216 2.816 1.216 2.048 3.264 3.424t4.416 1.696q2.496.32 5.024-.256t4.448-2.304q1.408-1.344 2.208-3.104t.864-3.68-.704-3.712q-.064-.128-.096-.224t-.096-.224q-.576-1.088-1.28-1.984-.256-.384-.544-.704t-.672-.64z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_git"><path d="M27.472 12.753 15.247.529a1.803 1.803.0 00-2.55.0l-2.84 2.84 2.137 2.137a2.625 2.625.0 013.501 3.501l3.499 3.499a2.625 2.625.0 11-1.237 1.237l-3.499-3.499c-.083.04-.169.075-.257.106v7.3a2.626 2.626.0 11-1.75.0v-7.3a2.626 2.626.0 01-1.494-3.607L8.62 4.606l-8.09 8.09a1.805 1.805.0 000 2.551l12.225 12.224a1.803 1.803.0 002.55.0l12.168-12.168a1.805 1.805.0 000-2.551z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_gitea"><path d="M5.581 7.229c-2.46-.005-5.755 1.559-5.573 5.48.284 6.125 6.56 6.693 9.068 6.743.275 1.149 3.227 5.112 5.412 5.32h9.573c5.741-.381 10.04-17.363 6.853-17.427-5.271.248-8.395.373-11.073.395v5.3l-.835-.369-.005-4.928c-3.075-.001-5.781-.144-10.919-.397-.643-.004-1.539-.113-2.501-.116zm.348 2.166h.293c.349 3.14.917 4.976 2.067 7.781-2.933-.347-5.429-1.199-5.888-4.38-.237-1.647.563-3.365 3.528-3.401zm11.409 3.087c.2.003.404.04.596.128l.999.431-.716 1.305h-.007a.996.996.0 00-.321.053l.006-.002c-.349.114-.593.406-.593.749.0.097.019.189.055.275l-.002-.006a.767.767.0 00.151.233l-.001-.001-1.235 2.248a.99.99.0 00-.302.052l.006-.002c-.349.114-.593.406-.593.749.0.097.019.189.055.275l-.002-.006c.128.31.457.527.843.527a.987.987.0 00.31-.049l-.006.002c.348-.114.592-.406.592-.749.0-.097-.02-.19-.056-.277l.002.006a.784.784.0 00-.211-.293l1.203-2.189a.999.999.0 00.397-.041l-.006.002a.942.942.0 00.285-.15l-.001.001c.464.195.844.353 1.117.488.411.203.556.337.6.487.044.147-.004.429-.236.925-.173.369-.46.893-.799 1.511h-.02a.991.991.0 00-.321.053l.006-.002c-.349.114-.593.406-.593.749.0.097.019.189.055.275l-.002-.006c.128.31.457.527.843.527a.987.987.0 00.31-.049l-.006.002c.348-.114.592-.406.592-.749a.703.703.0 00-.055-.275l.002.006a.802.802.0 00-.183-.27l.001.001c.335-.611.623-1.136.808-1.531.251-.536.381-.935.267-1.32s-.467-.636-.933-.867c-.307-.151-.689-.311-1.147-.503a.723.723.0 00-.052-.324l.002.006a.792.792.0 00-.194-.279l.704-1.284 3.899 1.684c.704.305.995 1.053.653 1.68l-2.68 4.907c-.343.625-1.184.884-1.888.58l-5.516-2.384c-.704-.304-.996-1.053-.653-1.68l2.68-4.905c.235-.431.707-.687 1.207-.707z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_github"><path d="M16 .394c8.833.0 15.999 7.166 15.999 15.999.0 7.062-4.583 13.062-10.937 15.187-.813.146-1.104-.354-1.104-.771.0-.521.021-2.25.021-4.396.0-1.5-.5-2.458-1.083-2.958 3.562-.396 7.312-1.75 7.312-7.896.0-1.75-.625-3.167-1.646-4.291.167-.417.708-2.042-.167-4.25-1.333-.417-4.396 1.646-4.396 1.646a15.032 15.032.0 00-8 0S8.937 6.602 7.603 7.018c-.875 2.208-.333 3.833-.167 4.25-1.021 1.125-1.646 2.542-1.646 4.291.0 6.125 3.729 7.5 7.291 7.896-.458.417-.875 1.125-1.021 2.146-.917.417-3.25 1.125-4.646-1.333-.875-1.521-2.458-1.646-2.458-1.646-1.562-.021-.104.979-.104.979 1.042.479 1.771 2.333 1.771 2.333.938 2.854 5.396 1.896 5.396 1.896.0 1.333.021 2.583.021 2.979.0.417-.292.917-1.104.771C4.582 29.455-.001 23.455-.001 16.393-.001 7.56 7.165.394 15.998.394zM6.063 23.372c.042-.083-.021-.187-.146-.25-.125-.042-.229-.021-.271.042-.042.083.021.187.146.25.104.062.229.042.271-.042zm.646.709c.083-.062.062-.208-.042-.333-.104-.104-.25-.146-.333-.062-.083.062-.062.208.042.333.104.104.25.146.333.062zm.625.937c.104-.083.104-.25.0-.396-.083-.146-.25-.208-.354-.125-.104.062-.104.229.0.375s.271.208.354.146zm.875.875c.083-.083.042-.271-.083-.396-.146-.146-.333-.167-.417-.062-.104.083-.062.271.083.396.146.146.333.167.417.062zm1.187.521c.042-.125-.083-.271-.271-.333-.167-.042-.354.021-.396.146s.083.271.271.312c.167.062.354.0.396-.125zm1.313.104c0-.146-.167-.25-.354-.229-.187.0-.333.104-.333.229.0.146.146.25.354.229.187.0.333-.104.333-.229zm1.208-.208c-.021-.125-.187-.208-.375-.187-.187.042-.312.167-.292.312.021.125.187.208.375.167s.312-.167.292-.292z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_gitlab"><path d="M1.629 11.034 14 26.888.442 17.048a1.09 1.09.0 01-.39-1.203l1.578-4.811zm7.217.0h10.309l-5.154 15.854zM5.753 1.475l3.093 9.559H1.63l3.093-9.559a.548.548.0 011.031.0zm20.618 9.559 1.578 4.811c.141.437-.016.922-.39 1.203l-13.558 9.84 12.371-15.854zm0 0h-7.216l3.093-9.559a.548.548.0 011.031.0z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_heart"><path d="M16 29.714a1.11 1.11.0 01-.786-.321L4.072 18.643c-.143-.125-4.071-3.714-4.071-8 0-5.232 3.196-8.357 8.535-8.357 3.125.0 6.053 2.464 7.464 3.857 1.411-1.393 4.339-3.857 7.464-3.857 5.339.0 8.535 3.125 8.535 8.357.0 4.286-3.928 7.875-4.089 8.035L16.785 29.392c-.214.214-.5.321-.786.321z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_home"><path d="M24.003 15.695v8.336c0 .608-.504 1.111-1.111 1.111h-6.669v-6.669h-4.446v6.669H5.108a1.119 1.119.0 01-1.111-1.111v-8.336c0-.035.017-.069.017-.104L14 7.359l9.986 8.232a.224.224.0 01.017.104zm3.873-1.198-1.077 1.285a.578.578.0 01-.365.191h-.052a.547.547.0 01-.365-.122L14 5.831 1.983 15.851a.594.594.0 01-.417.122.578.578.0 01-.365-.191L.124 14.497a.57.57.0 01.069-.781L12.679 3.314c.729-.608 1.91-.608 2.64.0l4.237 3.543V3.471c0-.313.243-.556.556-.556h3.334c.313.0.556.243.556.556v7.085l3.803 3.161c.226.191.26.556.069.781z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_info_outline"><path d="M12.62 9.793V6.967h2.761v2.826H12.62zM14 25.239q4.601.0 7.92-3.319T25.239 14 21.92 6.08 14 2.761 6.08 6.08 2.761 14t3.319 7.92T14 25.239zM14 0q5.784.0 9.892 4.108T28 14t-4.108 9.892T14 28t-9.892-4.108T0 14t4.108-9.892T14 0zm-1.38 21.033V12.62h2.761v8.413H12.62z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_keyboard_arrow_down"><path d="M3.281 5.36 14 16.079 24.719 5.36 28 8.641l-14 14-14-14z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_keyboard_arrow_left"><path d="M25.875 28.25 22.125 32 6.126 16.001 22.125.002l3.75 3.75-12.25 12.25z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_keyboard_arrow_right"><path d="M6.125 28.25 18.375 16 6.125 3.75 9.875.0l15.999 15.999L9.875 31.998z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_keyboard_arrow_up"><path d="M24.719 22.64 14 11.921 3.281 22.64.0 19.359l14-14 14 14z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_language"><path d="M20.112 16.826h4.732q.394-1.84.394-2.826t-.394-2.826h-4.732q.197 1.38.197 2.826t-.197 2.826zm-2.497 7.756q1.643-.526 3.418-2.005t2.695-2.991h-4.141q-.657 2.629-1.972 4.995zm-.329-7.756q.197-1.38.197-2.826t-.197-2.826h-6.573q-.197 1.38-.197 2.826t.197 2.826h6.573zM14 25.173q1.84-2.695 2.695-5.587h-5.39q.854 2.892 2.695 5.587zM8.413 8.413q.789-2.826 1.972-4.995-1.643.526-3.451 2.005T4.272 8.414h4.141zM4.272 19.587q.854 1.512 2.662 2.991t3.451 2.005q-1.315-2.366-1.972-4.995H4.272zm-1.117-2.761h4.732Q7.69 15.446 7.69 14t.197-2.826H3.155q-.394 1.84-.394 2.826t.394 2.826zM14 2.826q-1.84 2.695-2.695 5.587h5.39Q15.841 5.521 14 2.826zm9.727 5.587q-.92-1.512-2.695-2.991t-3.418-2.005q1.183 2.169 1.972 4.995h4.141zM14 0q5.784.0 9.892 4.108T28 14t-4.108 9.892T14 28t-9.892-4.108T0 14t4.108-9.892T14 0z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_link"><path d="M24.037 7.963q3.305.0 5.634 2.366T32 16t-2.329 5.671-5.634 2.366h-6.46v-3.08h6.46q2.028.0 3.493-1.465t1.465-3.493-1.465-3.493-3.493-1.465h-6.46v-3.08h6.46zM9.615 17.578v-3.155h12.77v3.155H9.615zM3.005 16q0 2.028 1.465 3.493t3.493 1.465h6.46v3.08h-6.46q-3.305.0-5.634-2.366T0 16.001t2.329-5.671 5.634-2.366h6.46v3.08h-6.46q-2.028.0-3.493 1.465t-1.465 3.493z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_mastodon"><path d="M30.924 10.506c0-6.941-4.548-8.976-4.548-8.976C24.083.477 20.144.034 16.054.001h-.101C11.862.034 7.926.477 5.633 1.53c0 0-4.548 2.035-4.548 8.976.0 1.589-.031 3.491.02 5.505.165 6.79 1.245 13.479 7.522 15.14 2.893.765 5.379.927 7.38.816 3.629-.2 5.667-1.296 5.667-1.296l-.12-2.633s-2.593.817-5.505.719c-2.887-.099-5.932-.311-6.399-3.855a7.069 7.069.0 01-.064-.967v-.028.001s2.833.693 6.423.857c2.195.1 4.253-.129 6.344-.377 4.009-.479 7.5-2.949 7.939-5.207.689-3.553.633-8.676.633-8.676zm-5.366 8.945h-3.329v-8.159c0-1.72-.724-2.592-2.171-2.592-1.6.0-2.403 1.035-2.403 3.083v4.465h-3.311v-4.467c0-2.048-.803-3.083-2.403-3.083-1.447.0-2.171.873-2.171 2.592v8.159H6.441v-8.404c0-1.719.437-3.084 1.316-4.093.907-1.011 2.092-1.528 3.565-1.528 1.704.0 2.995.655 3.848 1.965l.828 1.391.829-1.391c.853-1.311 2.144-1.965 3.848-1.965 1.472.0 2.659.517 3.565 1.528.877 1.009 1.315 2.375 1.315 4.093z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_matrix"><path d="M.843.734v30.532H3.04v.733H0V0h3.04v.733zm9.391 9.68v1.543h.044a4.417 4.417.0 011.489-1.365c.577-.327 1.248-.487 2-.487.72.0 1.377.143 1.975.419.597.277 1.047.776 1.36 1.477.339-.499.8-.941 1.379-1.323.579-.383 1.267-.573 2.061-.573.604.0 1.163.075 1.68.223a3.34 3.34.0 011.324.707c.368.327.652.745.861 1.268.203.523.307 1.151.307 1.889v7.637h-3.132v-6.468c0-.381-.013-.745-.043-1.083a2.315 2.315.0 00-.246-.893l.006.013a1.484 1.484.0 00-.577-.593l-.007-.004c-.259-.147-.609-.221-1.047-.221-.443.0-.8.085-1.071.252-.267.166-.483.39-.635.656l-.005.009a2.558 2.558.0 00-.307.915l-.002.013a7.156 7.156.0 00-.08 1.044v6.359h-3.133v-6.4c0-.339-.005-.671-.024-1.003a2.772 2.772.0 00-.197-.936l.007.019a1.41 1.41.0 00-.548-.667l-.006-.003c-.259-.167-.635-.253-1.139-.253-.148.0-.345.032-.585.099-.24.068-.48.191-.707.376-.228.184-.425.449-.585.793-.16.345-.24.8-.24 1.36v6.621H7.279v-11.42zm20.923 20.852V.734H28.96V.001H32V32h-3.04v-.733z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_menu"><path d="M.001 5.334h31.998v3.583H.001V5.334zm0 12.416v-3.5h31.998v3.5H.001zm0 8.916v-3.583h31.998v3.583H.001z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_notification"><path d="m22.615 19.384 2.894 2.894v1.413H2.49v-1.413l2.894-2.894V12.25q0-3.365 1.716-5.856t4.745-3.231v-1.01q0-.875.606-1.514T13.999.0t1.548.639.606 1.514v1.01q3.029.74 4.745 3.231t1.716 5.856v7.134zM14 27.999q-1.211.0-2.053-.808t-.841-2.019h5.788q0 1.144-.875 1.986T14 27.999z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_path"><path d="M28 12.62h-9.793V8.414h-2.826v11.173h2.826v-4.206H28V26.62h-9.793v-4.206H12.62v-14H9.794v4.206H.001V1.381h9.793v4.206h8.413V1.381H28V12.62z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_person"><path d="M16 20.023q5.052.0 10.526 2.199t5.473 5.754v4.023H0v-4.023q0-3.555 5.473-5.754t10.526-2.199zM16 16q-3.275.0-5.614-2.339T8.047 8.047t2.339-5.661T16 0t5.614 2.386 2.339 5.661-2.339 5.614T16 16z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_search"><path d="M11.925 20.161q3.432.0 5.834-2.402t2.402-5.834-2.402-5.834-5.834-2.402-5.834 2.402-2.402 5.834 2.402 5.834 5.834 2.402zm10.981.0L32 29.255 29.255 32l-9.094-9.094v-1.458l-.515-.515q-3.26 2.831-7.721 2.831-4.976.0-8.45-3.432T.001 11.925t3.474-8.45 8.45-3.474 8.407 3.474 3.432 8.45q0 1.802-.858 4.075t-1.973 3.646l.515.515h1.458z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_shield"><path d="M22.167 15.166V3.5h-8.166v20.726c.93-.492 2.424-1.349 3.883-2.497 1.95-1.531 4.284-3.919 4.284-6.562zm3.499-13.999v14c0 7.674-10.737 12.523-11.192 12.724-.146.073-.31.109-.474.109s-.328-.036-.474-.109c-.456-.201-11.192-5.049-11.192-12.724v-14C2.334.529 2.863.0 3.501.0H24.5c.638.0 1.167.529 1.167 1.167z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_star"><path d="M14 22.052 5.324 27.31l2.3-9.859L0 10.813l10.056-.854L14 .692l3.944 9.267L28 10.813l-7.624 6.638 2.3 9.859z"/></svg><svg viewBox="-7.27 -7.27 42.55 42.55" id="gdoc_tag"><path d="M17.52 17.52v-7.041h-7.041v7.041h7.041zM28 10.479h-7.041v7.041H28v3.439h-7.041V28H17.52v-7.041h-7.041V28H7.04v-7.041H-.001V17.52H7.04v-7.041H-.001V7.04H7.04V-.001h3.439V7.04h7.041V-.001h3.439V7.04H28v3.439z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_timer"><path d="M16 29q4.428.0 7.536-3.143t3.107-7.571-3.107-7.536T16 7.643 8.464 10.75t-3.107 7.536 3.107 7.571T16 29zM26.714 9.786q1.214 1.571 2.107 4.036t.893 4.464q0 5.643-4 9.678T16 32t-9.714-4.036-4-9.678 4-9.678T16 4.572q1.929.0 4.464.929t4.107 2.143l2.143-2.214q1.143.929 2.143 2.143zM14.5 19.857v-9.143h3v9.143h-3zM20.571.001v3.071h-9.143V.001h9.143z"/></svg><svg viewBox="-7.27 -7.27 46.55 46.55" id="gdoc_xmpp"><path d="M31.995 4.237c-.449.175-1.12.433-1.936.745-1.544.591-2.328.891-2.924 1.093-.613.208-1.287.409-2.635.813-.911.272-1.672.495-2.212.651-.031.875.0 2.177-.292 3.635a21.837 21.837.0 01-2.016 5.765c-1.496 2.944-3.236 4.817-3.88 5.476-.056-.059-.112-.117-.168-.179-.707-.763-2.403-2.703-3.815-5.683-1.053-2.223-1.484-4.044-1.605-4.584-.356-1.589-.427-2.955-.427-4.117.0-.075-.036-.129-.101-.149-.721-.223-1.765-.519-2.887-.853-1.271-.379-2.193-.744-3.408-1.2-.493-.185-1.409-.547-2.217-.859C.723 4.499.113 4.236.041 4.236c-.005.0-.015.0-.023.012a.131.131.0 00-.019.076c.009.593.08 1.361.256 2.365.615 3.503 2.688 7.061 4.36 9.244.0.0 3.717 5.035 9.128 8.144l.303.176c-.009.008-.02.015-.028.021-1.717 1.316-3.201 1.977-3.579 2.14a15.71 15.71.0 01-2.219.772v.407a25.31 25.31.0 002.72-.487 26.72 26.72.0 005.075-1.792c.136.067.276.136.42.204 1.527.725 3.571 1.627 6.073 2.048.613.103 1.136.165 1.507.195a.109.109.0 00.115-.091.55.55.0 00.004-.217.107.107.0 00-.063-.073c-.505-.209-1.201-.4-1.983-.719-.935-.381-2.241-1.067-3.648-2.128a13.528 13.528.0 01-.367-.287c4.64-2.656 7.989-6.588 7.989-6.588 1.735-2.036 4.441-5.623 5.431-9.795.349-1.473.539-2.741.5-3.628z"/></svg></defs></svg><div class=wrapper><input type=checkbox class=hidden id=menu-control>
- <input type=checkbox class=hidden id=menu-header-control><header class=gdoc-header><div class="container flex align-center justify-between"><label for=menu-control class=gdoc-nav__control tabindex=0><svg class="gdoc-icon gdoc_menu"><title/><use xlink:href="#gdoc_menu"/></svg><svg class="gdoc-icon gdoc_arrow_back"><title/><use xlink:href="#gdoc_arrow_back"/></svg></label><div><a class="gdoc-brand gdoc-header__link" href=https://maxtar.github.io/><span class="flex align-center"><img class=gdoc-brand__img src=/brand.svg alt>
- <span class=gdoc-brand__title>Max Wiki Site</span></span></a></div><div class=gdoc-menu-header><span class=gdoc-menu-header__items><span id=gdoc-color-theme><svg class="gdoc-icon gdoc_brightness_dark"><title/><use xlink:href="#gdoc_brightness_dark"/></svg>
- <svg class="gdoc-icon gdoc_brightness_light"><title/><use xlink:href="#gdoc_brightness_light"/></svg>
- <svg class="gdoc-icon gdoc_brightness_auto"><title/><use xlink:href="#gdoc_brightness_auto"/></svg>
- </span><span class=gdoc-menu-header__home><a href=https://maxtar.github.io/ class=gdoc-header__link><svg class="gdoc-icon gdoc_home"><title/><use xlink:href="#gdoc_home"/></svg>
- </a></span><span class=gdoc-menu-header__control><label for=menu-header-control><svg class="gdoc-icon gdoc_keyboard_arrow_right"><use xlink:href="#gdoc_keyboard_arrow_right"/><title/></svg>
- </label></span></span><label for=menu-header-control class=gdoc-menu-header__control><svg class="gdoc-icon gdoc_keyboard_arrow_left"><use xlink:href="#gdoc_keyboard_arrow_left"/><title/></svg></label></div></div></header><main class="container flex flex-even"><aside class=gdoc-nav><nav><div class="gdoc-search flex align-center"><svg class="gdoc-icon gdoc_search"><use xlink:href="#gdoc_search"/></svg>
- <input type=text id=gdoc-search-input class=gdoc-search__input placeholder=... aria-label maxlength=64 data-site-base-url=https://maxtar.github.io/ data-site-lang=ru><ul id=gdoc-search-results class=gdoc-search__list></ul></div><section class=gdoc-nav--main><h2></h2><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/ class=gdoc-nav__entry>3D, VFX, Видео</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/blender/ class=gdoc-nav__entry>Blender</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/blender/addons/ class=gdoc-nav__entry>Addons</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/blender/remove-fireflies/ class=gdoc-nav__entry>Как избавиться от светлячков</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/blender/keys/ class=gdoc-nav__entry>Полезные команды и клавиатурные сокращения Blender</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/blender/links/ class=gdoc-nav__entry>Полезные ссылки</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/blender/renderman/ class=gdoc-nav__entry>Разные вопросы по renderman</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/video/ class=gdoc-nav__entry>Видео</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/video/kdenlive/ class=gdoc-nav__entry>Kdenlive</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/3d-vfx-video/textures-and-materials/ class=gdoc-nav__entry>Текстуры и материалы</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/ class=gdoc-nav__entry>Администрирование</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/curl/ class=gdoc-nav__entry>Curl</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/firefox/ class=gdoc-nav__entry>Firefox</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/ class=gdoc-nav__entry>Linux</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/iptables/ class=gdoc-nav__entry>iptables</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/autostart/ class=gdoc-nav__entry>Автозагрузка</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/hibernate/ class=gdoc-nav__entry>Настройка hibernate на linux без использования swap раздела</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/swap/ class=gdoc-nav__entry>Настройка swap</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/kde/ class=gdoc-nav__entry>Оптимизация KDE5</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/useful-commands/ class=gdoc-nav__entry>Очень полезные команды Linux на одном листе</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/useful-information/ class=gdoc-nav__entry>Полезная информация по разным командам Linux</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/settings-after-installing/ class=gdoc-nav__entry>Полезные установки</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/troubleshooting/ class=gdoc-nav__entry>Решение разных проблем</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/commands/ class=gdoc-nav__entry>Список команд POSIX и их описание</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/install-firefox-from-rep/ class=gdoc-nav__entry>Установка Firefox из репозитория</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/linux/install-nvidia/ class=gdoc-nav__entry>Установка проприетарных драйверов NVidia</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/mikrotik/ class=gdoc-nav__entry>Mikrotik</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/rapberry-pi/ class=gdoc-nav__entry>Rapberry Pi</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/rapberry-pi/raspbian/ class=gdoc-nav__entry>Raspbian</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/windows/ class=gdoc-nav__entry>Windows</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/windows/useful-programs/ class=gdoc-nav__entry>Полезные программы</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/common/ class=gdoc-nav__entry>Общие вопросы</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/first-10-min/ class=gdoc-nav__entry>Первые 10 минут на сервере</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/administration/useful-programs/ class=gdoc-nav__entry>Полезные программы</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/games/ class=gdoc-nav__entry>Игры</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/games/godot/ class=gdoc-nav__entry>Godot</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/games/godot/gdscript/ class=gdoc-nav__entry>GdScript</a></span></label></li></ul></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/ class=gdoc-nav__entry>Программирование</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/csharp/ class=gdoc-nav__entry>C#</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/csharp/useful-libs/ class=gdoc-nav__entry>Полезные библиотеки</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/csharp/useful-func/ class=gdoc-nav__entry>Полезные функции</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/docker/ class=gdoc-nav__entry>Docker</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/go/ class=gdoc-nav__entry>Go</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/go/i18n-i10n/ class=gdoc-nav__entry>Internationalization (i18n) и Localization (l10n) в Go</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/go/useful-libs/ class="gdoc-nav__entry is-active">Полезные библиотеки</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/go/useful-programs/ class=gdoc-nav__entry>Полезные программы на Go</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/go/useful-func/ class=gdoc-nav__entry>Полезные функции</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/go/time-formatting/ class=gdoc-nav__entry>Форматирование даты/времени</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/java/ class=gdoc-nav__entry>Java</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/java/useful-libs/ class=gdoc-nav__entry>Полезные библиотеки</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/kotlin/ class=gdoc-nav__entry>Kotlin</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/kotlin/useful-libs/ class=gdoc-nav__entry>Полезные библиотеки</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/python/ class=gdoc-nav__entry>Python</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/rust/ class=gdoc-nav__entry>Rust</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/rust/useful-programs/ class=gdoc-nav__entry>Полезные программы на Rust</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/sql/ class=gdoc-nav__entry>SQL</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/web/ class=gdoc-nav__entry>Web</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/monitoring/ class=gdoc-nav__entry>Мониторинг</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/useful-git/ class=gdoc-nav__entry>Полезная информация по git</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/useful-links/ class=gdoc-nav__entry>Полезные ссылки</a></span></label></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/programming/regexp/ class=gdoc-nav__entry>Регулярные выражения</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/other/ class=gdoc-nav__entry>Разная информация</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/other/useful-programs/ class=gdoc-nav__entry>Разные полезные программы</a></span></label></li></ul></li><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/testing/ class=gdoc-nav__entry>Тестирование</a></span></label><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><a href=/testing/libraries/ class=gdoc-nav__entry>Библиотеки для автоматизации</a></span></label></li></ul></li></ul></section><section class=gdoc-nav--more><h2></h2><ul class=gdoc-nav__list><li><input type=checkbox class=hidden>
- <label><span class=flex><svg class="gdoc-icon gdoc_tag"><use xlink:href="#gdoc_tag"/></svg>
- <a href=/tags class=gdoc-nav__entry>Tags</a></span></label></li></ul></section></nav></aside><div class=gdoc-page><div class="gdoc-page__header flex flex-wrap
- justify-between
- hidden-mobile" itemprop=breadcrumb><div><svg class="gdoc-icon gdoc_path hidden-mobile"><use xlink:href="#gdoc_path"/></svg><ol class=breadcrumb itemscope itemtype=https://schema.org/BreadcrumbList><li itemprop=itemListElement itemscope itemtype=https://schema.org/ListItem><a itemscope itemtype=https://schema.org/WebPage itemprop=item itemid=/ href=/><span itemprop=name>Тут всё начинается</span></a><meta itemprop=position content='1'></li><li>/</li><li itemprop=itemListElement itemscope itemtype=https://schema.org/ListItem><a itemscope itemtype=https://schema.org/WebPage itemprop=item itemid=/programming/ href=/programming/><span itemprop=name>Программирование</span></a><meta itemprop=position content='2'></li><li>/</li><li itemprop=itemListElement itemscope itemtype=https://schema.org/ListItem><a itemscope itemtype=https://schema.org/WebPage itemprop=item itemid=/programming/go/ href=/programming/go/><span itemprop=name>Go</span></a><meta itemprop=position content='3'></li><li>/</li><li itemprop=itemListElement itemscope itemtype=https://schema.org/ListItem><span itemprop=name>Полезные библиотеки</span><meta itemprop=position content='4'></li></ol></div></div><article class="gdoc-markdown gdoc-markdown__align--left"><h1>Полезные библиотеки</h1><div class="gdoc-toc gdoc-toc__level--6"><nav id=TableOfContents><ul><li><a href=#конфигурация-и-всё-такое>Конфигурация и всё такое</a></li><li><a href=#логгирование>Логгирование</a></li><li><a href=#ui>UI</a><ul><li><a href=#пользовательский-интерфейс-в-терминале>Пользовательский интерфейс в терминале</a></li><li><a href=#gui>GUI</a></li></ul></li><li><a href=#консоль>Консоль</a></li><li><a href=#работа-с-бд>Работа с БД</a></li><li><a href=#работа-с-json-xml>Работа с json, XML</a></li><li><a href=#html-парсинг-сайтов>HTML, парсинг сайтов</a></li><li><a href=#работа-с-файлами>Работа с файлами</a></li><li><a href=#тестирование>Тестирование</a><ul><li><a href=#генерация-данных>Генерация данных</a></li></ul></li><li><a href=#шаблоны>Шаблоны</a></li><li><a href=#http>HTTP</a></li><li><a href=#web-приложения>WEB-приложения</a></li><li><a href=#openapi>OpenAPI</a></li><li><a href=#работа-с-сетью>Работа с сетью</a></li><li><a href=#работа-со-строками>Работа со строками</a></li><li><a href=#работа-со-временем>Работа со временем</a></li><li><a href=#генерация-различных-id>Генерация различных ID</a></li><li><a href=#работа-с-hardware>Работа с hardware</a></li><li><a href=#сетевые-framework>Сетевые framework</a></li><li><a href=#списки-и-наборы>Списки и наборы</a></li><li><a href=#игры>Игры</a></li><li><a href=#графика>Графика</a></li><li><a href=#видео>Видео</a></li><li><a href=#статистика-и-математика>Статистика и математика</a></li><li><a href=#обработка-данных-на-потоке-и-прочее>Обработка данных на потоке и прочее</a></li><li><a href=#парсеры>Парсеры</a></li><li><a href=#коллекции>Коллекции</a></li><li><a href=#встраивание-ресурсов-теперь-не-актуально-так-как-с-версии-16-есть-встроенный-механизм>Встраивание ресурсов (теперь не актуально, так как с версии 1.6 есть встроенный механизм)</a></li><li><a href=#вспомогательные-утилиты>Вспомогательные утилиты</a></li><li><a href=#работа-со-звуком>Работа со звуком</a></li><li><a href=#мониторинг>Мониторинг</a></li><li><a href=#opencv>OpenCV</a></li><li><a href=#офис>Офис</a></li><li><a href=#goroutines>goroutines</a></li><li><a href=#шифровние>Шифровние</a></li><li><a href=#события>События</a></li><li><a href=#интеграция-с-другими-яп>Интеграция с другими ЯП</a></li><li><a href=#разное>Разное</a></li></ul></nav><hr></div><div class="flex align-center gdoc-page__anchorwrap"><h2 id=конфигурация-и-всё-такое>Конфигурация и всё такое</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#конфигурация-и-всё-такое class="gdoc-page__anchor clip flex align-center" title=" Конфигурация и всё такое" aria-label=" Конфигурация и всё такое" href=#%d0%ba%d0%be%d0%bd%d1%84%d0%b8%d0%b3%d1%83%d1%80%d0%b0%d1%86%d0%b8%d1%8f-%d0%b8-%d0%b2%d1%81%d1%91-%d1%82%d0%b0%d0%ba%d0%be%d0%b5><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/spf13/viper target=_blank>viper<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> Чтение и сохранение конфигурации в различных форматах.</li><li><a href=https://github.com/spf13/cobra target=_blank>Работа с командной строкой: создание флагов командной строки в POSIX формате, автоматическая генерация “как использовать”<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/alecthomas/kingpin target=_blank>Kingpin<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё одна реализация работы с флагами. <a href=https://godoc.org/github.com/alecthomas/kingpin target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/integrii/flaggy target=_blank>Flaggy<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Также работа с командной, возможность создания подкоманд. <a href=https://godoc.org/github.com/integrii/flaggy target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/micro/go-config target=_blank>Go-Config<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Позволяет собирать конфигурацию из различных источников (файлы, командная строка и т.д.). <a href=https://godoc.org/github.com/micro/go-config target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://micro.mu/blog/2018/07/04/go-config.html target=_blank>Описание в блоге<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/tkanos/gonfig target=_blank>Gonfig<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет читать конфигурацию из json и переменных окружения.</li><li><a href=https://github.com/moogar0880/venom target=_blank>Venom<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Также позволяет конфигурировать из различных источников. <a href=https://godoc.org/github.com/moogar0880/venom target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Реализация формата <a href=https://github.com/lightbend/config/blob/master/HOCON.md target=_blank>HOCON<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> <a href=https://github.com/go-akka/configuration target=_blank>configuration<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/go-akka/configuration target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/go-yaml/yaml target=_blank>Yaml<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - работа с YAML от <a href=https://www.canonical.com/ target=_blank>Canonical<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://gopkg.in/yaml.v3 target=_blank>API<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://blog.ubuntu.com/2019/04/05/api-v3-of-the-yaml-package-for-go-is-available target=_blank>Blog<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/manifoldco/promptui target=_blank>promptui<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет запрашивать у пользователя информацию в процессе работает. Интегрируется, например с <a href=https://github.com/spf13/cobra target=_blank>cobra<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> и другими подобными библиотеками. <a href="https://pkg.go.dev/github.com/manifoldco/promptui?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/urfave/cli target=_blank>cli<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё одна библиотека для расширения флагов командной строки. <a href="https://pkg.go.dev/github.com/urfave/cli?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/knadh/koanf target=_blank>koanf<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позиционируется как более легковесный конкурент <a href=https://github.com/spf13/viper target=_blank>viper<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=логгирование>Логгирование</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#логгирование class="gdoc-page__anchor clip flex align-center" title=" Логгирование" aria-label=" Логгирование" href=#%d0%bb%d0%be%d0%b3%d0%b3%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li>Библиотека от Google <a href=https://github.com/golang/glog target=_blank>Glog<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/golang/glog target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Библиотека от juju <a href=https://github.com/juju/loggo target=_blank>Loggo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/juju/loggo target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Библиотека от Uber <a href=https://github.com/uber-go/zap target=_blank>Zap<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/go.uber.org/zap target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/sirupsen/logrus target=_blank>Logrus<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Наверное наиболее популярный. Используется в Docker. <a href=https://godoc.org/github.com/sirupsen/logrus target=_blank>API<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Вроде как самая маленькая библиотека <a href=https://github.com/op/go-logging target=_blank>go-logging<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/op/go-logging target=_blank>API<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/rs/zerolog target=_blank>zerolog<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - логирование в формате json. <a href=https://godoc.org/github.com/rs/zerolog target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Также может логировать в нормальном виде.</li><li><a href=https://github.com/davecgh/go-spew target=_blank>go-spew<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - красивый вывод в консоль данных для отладки. <a href="https://pkg.go.dev/github.com/davecgh/go-spew@v1.1.1/spew?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/henvic/httpretty target=_blank>httpretty<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - удобное логирование в консоль http запросов как на сервере, так и на клиенте. <a href="https://pkg.go.dev/github.com/henvic/httpretty?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/m-mizutani/zlog target=_blank>zlog<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - логер позволяет скрывать чувствительную информацию из логирования. <a href=https://pkg.go.dev/github.com/m-mizutani/zlog@v0.2.0 target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/charmbracelet/log target=_blank>Log<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - простенький логер с подсветкой вывода от создателей <a href=https://github.com/charmbracelet/bubbletea target=_blank>Bubble Tea<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://pkg.go.dev/github.com/charmbracelet/log target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=ui>UI</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#ui class="gdoc-page__anchor clip flex align-center" title=" UI" aria-label=" UI" href=#ui><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><div class="flex align-center gdoc-page__anchorwrap"><h3 id=пользовательский-интерфейс-в-терминале>Пользовательский интерфейс в терминале</h3><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#пользовательский-интерфейс-в-терминале class="gdoc-page__anchor clip flex align-center" title=" Пользовательский интерфейс в терминале" aria-label=" Пользовательский интерфейс в терминале" href=#%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be%d0%b2%d0%b0%d1%82%d0%b5%d0%bb%d1%8c%d1%81%d0%ba%d0%b8%d0%b9-%d0%b8%d0%bd%d1%82%d0%b5%d1%80%d1%84%d0%b5%d0%b9%d1%81-%d0%b2-%d1%82%d0%b5%d1%80%d0%bc%d0%b8%d0%bd%d0%b0%d0%bb%d0%b5><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><p><a href=https://appliedgo.net/tui target=_blank>Отличная статья<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> с обзором разных библиотек для написания text-based GUI.</p><ul><li><a href=https://github.com/nsf/termbox-go target=_blank>Пользовательский интерфейс в терминале (https://github.com/nsf/termbox-go)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/gdamore/tcell target=_blank>Ещё одна реализация (https://github.com/gdamore/tcell)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Почти полностью совместима с <a href=https://github.com/nsf/termbox-go target=_blank>termbox-go<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/jroimartin/gocui target=_blank>gocui<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/jroimartin/gocui target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/gizak/termui target=_blank>TermUI<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://github.com/gizak/termui/wiki target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/charmbracelet/bubbletea target=_blank>Bubble Tea<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - от создателей <a href=https://github.com/charmbracelet/glow target=_blank>Glow<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/Delta456/box-cli-maker target=_blank>Box CLI Maker<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет создавать приветственные окна.</li></ul><div class="flex align-center gdoc-page__anchorwrap"><h3 id=gui>GUI</h3><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#gui class="gdoc-page__anchor clip flex align-center" title=" GUI" aria-label=" GUI" href=#gui><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/googollee/go-socket.io target=_blank>Реализация node.js socket (https://github.com/googollee/go-socket.io)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Полезно при использовании <a href=http://electron.atom.io target=_blank>electron<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> в качестве UI.</li><li><a href=https://github.com/asticode/go-astilectron target=_blank>Библиотека для написания GUI на Electron (https://github.com/asticode/go-astilectron)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/lxn/walk target=_blank>Walk.<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> Библиотека позволяет писать GUI под Windows. Является обёрткой над win32 API.</li><li><a href=https://github.com/mjl-/duit target=_blank>duit<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Развивающаяся библиотека. Кроссплатформенная. <a href=https://www.ueber.net/who/mjl/blog/p/duit-developer-ui-toolkit/ target=_blank>Вводная информация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/zserge/webview target=_blank>WebView<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - вызов встроенного в GUI операционки просмотрщика HTML. Кросплатформенный. <a href=https://godoc.org/github.com/zserge/webview target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/therecipe/qt target=_blank>QT(https://github.com/therecipe/qt)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - биндинг QT для Go. <a href=https://github.com/therecipe/qt/wiki target=_blank>Wiki<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/gonutz/wui target=_blank>WUI(https://github.com/gonutz/wui)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет создавать простые GUI в Windows. <a href=https://godoc.org/github.com/gonutz/wui target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/getlantern/systray target=_blank>Systray<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет выводить информацию в tray.</li><li><a href=https://git.sr.ht/~eliasnaur/gio target=_blank>Gio<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - пилит чувак из Google. Надо следить. Основной сайт <a href=https://gioui.org target=_blank>gioui<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/goki/gi target=_blank>Gi<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё один framework, но зависит от cgo.</li><li><a href=https://github.com/fyne-io/fyne target=_blank>fyne<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - кроссплатформенная библиотека. Под виндой собралась. <a href="https://pkg.go.dev/fyne.io/fyne?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Документация на <a href=https://fyne.io/develop/ target=_blank>сайте разработчика<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/AllenDang/giu target=_blank>giu<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - обёртка над <a href=https://github.com/ocornut/imgui target=_blank>Dear ImGui<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Поддерживает lua. <a href="https://pkg.go.dev/github.com/AllenDang/giu?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/ying32/govcl target=_blank>govcl(https://github.com/ying32/govcl)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - биндинг над графической библиотекой lazurus. Мне кажется очень перспективная. <a href=https://github.com/ying32/govcl/blob/master/README.en-US.md target=_blank>README<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://embeddedgo.github.io/2022/03/09/pix_a_minimalistic_graphic_library_part1.html target=_blank>pix<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - какая-то минималистическая библиотека. <a href=https://pkg.go.dev/github.com/embeddedgo/display/pix target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=консоль>Консоль</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#консоль class="gdoc-page__anchor clip flex align-center" title=" Консоль" aria-label=" Консоль" href=#%d0%ba%d0%be%d0%bd%d1%81%d0%be%d0%bb%d1%8c><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/jedib0t/go-pretty target=_blank>go-pretty<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - упрощает вывод текста, таблиц, списков в консоль. Progressbar. <a href="https://pkg.go.dev/github.com/jedib0t/go-pretty?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></li><li><a href=https://github.com/jwalton/gchalk target=_blank>gchalk<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет выводить в консоль разноцветный текст. <a href="https://pkg.go.dev/github.com/jwalton/gchalk?readme=expanded#section-documentation" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://pterm.sh target=_blank>PTerm<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё одна реализация цветного терминала. Очень прикольный. <a href=https://github.com/pterm/pterm target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/charmbracelet/lipgloss target=_blank>lipgloss<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё одна библиотека для создания интерфсов в терминале.</li><li>Анимация в командной строке <a href=https://github.com/gernest/wow target=_blank>Wow<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/schollz/progressbar target=_blank>progressbar<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> от автора croc. <a href=https://pkg.go.dev/github.com/schollz/progressbar/v3 target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/fatih/color target=_blank>color<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет раскрашивать вывод в консоль. <a href=https://pkg.go.dev/github.com/fatih/color target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/abiosoft/ishell target=_blank>ishell<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека позволяет создавать интерактивные консольные приложения.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=работа-с-бд>Работа с БД</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#работа-с-бд class="gdoc-page__anchor clip flex align-center" title=" Работа с БД" aria-label=" Работа с БД" href=#%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0-%d1%81-%d0%b1%d0%b4><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/jmoiron/sqlx target=_blank>sqlx<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Работа с данными как со структурами.</li><li><a href=https://github.com/volatiletech/sqlboiler target=_blank>sqlboiler<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Ещё одна библиотека для генерации данных на основании схемы. <a href=https://godoc.org/github.com/volatiletech/sqlboiler target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/denisenkom/go-mssqldb target=_blank>Драйвер для MS SQL (https://github.com/denisenkom/go-mssqldb)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/boltdb/bolt target=_blank>Bolt (embeded key/value база данных) (https://github.com/boltdb/bolt)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> (например, используется в <a href=https://influxdata.com/ target=_blank>InfluxDB<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>).<ul><li><a href=https://github.com/boltdb/bolt#other-projects-using-bolt target=_blank>Список проектов, использующих bolt<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Среди них много интересных.</li></ul></li><li><a href=https://github.com/dgraph-io/badger target=_blank>Budger<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/mattn/go-sqlite3 target=_blank>Драйвер для sqllite (https://github.com/mattn/go-sqlite3)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></li><li><a href=https://github.com/cznic/ql target=_blank>ql<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - embedded SQL database. <a href=https://godoc.org/github.com/cznic/ql target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=http://gorm.io/ target=_blank>Gorm<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ORM для Go. <a href=https://github.com/jinzhu/gorm target=_blank>Github<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/jinzhu/gorm target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=http://gorm.io/docs/ target=_blank>Docs<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/huandu/go-sqlbuilder target=_blank>go-sqlbuilder<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - постритель запросов к базе. <a href="https://pkg.go.dev/github.com/huandu/go-sqlbuilder?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/Masterminds/squirrel target=_blank>squirrel<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - sql генератор. <a href="https://pkg.go.dev/github.com/Masterminds/squirrel?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/hashicorp/go-memdb target=_blank>go-memdb<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - база в памяти, близка к Redis. поддерживает транзакции.</li><li><a href=https://gitlab.com/cznic/sqlite target=_blank>sqlite<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - реализация sqlite на чистом Go. <a href=https://pkg.go.dev/github.com/abiosoft/ishell target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=работа-с-json-xml>Работа с json, XML</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#работа-с-json-xml class="gdoc-page__anchor clip flex align-center" title=" Работа с json, XML" aria-label=" Работа с json, XML" href=#%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0-%d1%81-json-xml><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/json-iterator/java target=_blank>jsoniter<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Проекты Tidwall<ul><li><a href=https://github.com/tidwall/gjson target=_blank>gjson<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Библиотека для работы с json. Можно получать значение по пути.</li><li><a href=https://github.com/tidwall/sjson target=_blank>sjson<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Библиотека, противоположная gjson. Позволяет устанавливать значения по пути.</li><li><a href=https://github.com/tidwall/jj target=_blank>jj<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - обработка json на потоке.</li></ul></li><li><a href=https://github.com/valyala/fastjson target=_blank>fastjson<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Библиотека от создателя <a href=https://github.com/valyala/fasthttp target=_blank>fasthttp<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/valyala/fastjson target=_blank>API<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/thedevsaddam/gojsonq target=_blank>gojsonq<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> A simple Go package to Query over JSON/YAML/XML/CSV Data. <a href=https://godoc.org/github.com/thedevsaddam/gojsonq target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/mailru/easyjson target=_blank>easyjson<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - серилизатор без reflection от mail.ru.</li><li><a href=https://github.com/tailscale/hujson target=_blank>hujson<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - HumanJson - позволяет парсить json с комментариями и запятыми после последнего элемента. <a href="https://pkg.go.dev/github.com/tailscale/hujson?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/goccy/go-json target=_blank>go-json<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - очередной быстрый заменитель стандартной библиотеки.</li><li><a href=https://github.com/bytedance/sonic target=_blank>sonic<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека от создателей Tik-Tok. Используют ассемблер. <a href=https://pkg.go.dev/github.com/bytedance/sonic target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=html-парсинг-сайтов>HTML, парсинг сайтов</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#html-парсинг-сайтов class="gdoc-page__anchor clip flex align-center" title=" HTML, парсинг сайтов" aria-label=" HTML, парсинг сайтов" href=#html-%d0%bf%d0%b0%d1%80%d1%81%d0%b8%d0%bd%d0%b3-%d1%81%d0%b0%d0%b9%d1%82%d0%be%d0%b2><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/PuerkitoBio/goquery target=_blank>goquery<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет работать со страницой как Jquery только на GO. Удобно для разбора. <a href="https://pkg.go.dev/github.com/PuerkitoBio/goquery?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=работа-с-файлами>Работа с файлами</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#работа-с-файлами class="gdoc-page__anchor clip flex align-center" title=" Работа с файлами" aria-label=" Работа с файлами" href=#%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0-%d1%81-%d1%84%d0%b0%d0%b9%d0%bb%d0%b0%d0%bc%d0%b8><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/juju/fslock target=_blank>fslock<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - блокировка файлов. <a href=https://godoc.org/github.com/juju/fslock target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/fsnotify/fsnotify target=_blank>fsnotify<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - отслеживание изменений ФС. <a href=https://godoc.org/github.com/fsnotify/fsnotify target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=тестирование>Тестирование</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#тестирование class="gdoc-page__anchor clip flex align-center" title=" Тестирование" aria-label=" Тестирование" href=#%d1%82%d0%b5%d1%81%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li>Bdd test framework <a href=http://onsi.github.io/ginkgo target=_blank>ginkgo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://github.com/onsi/ginkgo target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.<ul><li><a href=https://onsi.github.io/gomega target=_blank>gomega<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для сравнения, интегрируется с ginkgo.</li></ul></li><li><a href=https://github.com/franela/goblin target=_blank>goblin<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё один BDD.</li><li><a href=https://github.com/DATA-DOG/godog target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Пакет для создание и запуска тестов на Cucumber в Go.<ul><li><a href=https://semaphoreci.com/community/tutorials/how-to-use-godog-for-behavior-driven-development-in-go target=_blank>Как использовать godoc для создания заглушек на основании feature-файлов<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></li><li><a href=https://github.com/cucumber/gherkin-go target=_blank>Gherkin parser Go<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul></li><li><a href=https://github.com/stretchr/testify target=_blank>Testify<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека по принципу *unit. Добавляет методы assert.</li><li><a href=http://goconvey.co/ target=_blank>GoConvey<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://github.com/smartystreets/goconvey target=_blank>Github<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/go-vgo/robotgo target=_blank>RobotGo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет управлять GUI из Go.<a href=https://godoc.org/github.com/go-vgo/robotgo target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://github.com/go-vgo/robotgo/blob/master/docs/doc.md target=_blank>ApiDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/flyingmutant/rapid target=_blank>Rapid<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - property-based тестирование. <a href=https://godoc.org/github.com/flyingmutant/rapid target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/google/go-cmp target=_blank>go-cmp<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для сравнения значений двух структур. <a href=https://godoc.org/github.com/google/go-cmp/cmp target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/frankban/quicktest target=_blank>quicktest<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - набор удобных методов.</li><li><a href=https://github.com/chromedp/chromedp target=_blank>chromedr<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - реализация Chrome driver API на Go. <a href="https://pkg.go.dev/github.com/chromedp/chromedp?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://labix.org/gocheck target=_blank>gocheck<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - конкурент <a href=https://github.com/stretchr/testify target=_blank>testify<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><div class="flex align-center gdoc-page__anchorwrap"><h3 id=генерация-данных>Генерация данных</h3><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#генерация-данных class="gdoc-page__anchor clip flex align-center" title=" Генерация данных" aria-label=" Генерация данных" href=#%d0%b3%d0%b5%d0%bd%d0%b5%d1%80%d0%b0%d1%86%d0%b8%d1%8f-%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/icrowley/fake target=_blank>Fake<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Библиотека для генерации различных данных на русском и английском языках. <a href=https://godoc.org/github.com/icrowley/fake target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/bxcodec/faker target=_blank>Faker<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё одна библиотека. <a href="https://pkg.go.dev/github.com/bxcodec/faker?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/brianvoe/gofakeit target=_blank>gofakeit<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - тоже для генерации данных.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=шаблоны>Шаблоны</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#шаблоны class="gdoc-page__anchor clip flex align-center" title=" Шаблоны" aria-label=" Шаблоны" href=#%d1%88%d0%b0%d0%b1%d0%bb%d0%be%d0%bd%d1%8b><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/a-h/templ target=_blank>templ<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - написание html шаблонов на Go. <a href=https://templ.guide target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=http>HTTP</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#http class="gdoc-page__anchor clip flex align-center" title=" HTTP" aria-label=" HTTP" href=#http><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/valyala/fasthttp target=_blank>fasthttp<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - на сегодняшний момент самая быстрая реализация http сервера на Go. <a href=https://godoc.org/github.com/valyala/fasthttp target=_blank>API<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></li><li><a href=https://github.com/go-resty/resty target=_blank>resty<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - rest-client, позволяющий удобно делать запросы и разбирать ответы. Автоматически измеряет время ответа от сервера. <a href=https://godoc.org/gopkg.in/resty.v1 target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/lucas-clemente/quic-go target=_blank>quic-go<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - реализация протокола quic на Go.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=web-приложения>WEB-приложения</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#web-приложения class="gdoc-page__anchor clip flex align-center" title=" WEB-приложения" aria-label=" WEB-приложения" href=#web-%d0%bf%d1%80%d0%b8%d0%bb%d0%be%d0%b6%d0%b5%d0%bd%d0%b8%d1%8f><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=http://www.gorillatoolkit.org target=_blank>Gorilla web toolkit<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://www.activestate.com/blog/2017/04/creating-web-app-using-golang-gorilla-web-toolkit target=_blank>Небольшая вводная<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://revel.github.io/ target=_blank>Revel<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Framework типа <a href=https://grails.org/ target=_blank>Grails<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> для Go.</li><li>Компилятор Go в JS <a href=https://github.com/gopherjs/gopherjs target=_blank>GopherJs<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/josephspurrier/gowebapp target=_blank>GoWebApp<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - MVC web application на Go. <a href=https://github.com/blue-jay/blueprint target=_blank>Blue Jay - Blueprint<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - Более продвинутая реализация.</li><li>Framework <a href=https://go-macaron.com target=_blank>macaron<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://go-macaron.com/docs target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://github.com/go-macaron/macaron target=_blank>Github<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/usmanhalalit/hutplate target=_blank>hutplate<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - надстройка над http для облегчения авторизации, сессионностии прочее.</li><li><a href=https://gobuffalo.io/ target=_blank>Bufallo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё один web-framewrok. <a href=https://beego.me/docs/intro target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://github.com/gobuffalo/buffalo target=_blank>Github<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://beego.me target=_blank>Beego<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> web-framework. <a href=https://github.com/astaxie/beego target=_blank>Github<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/astaxie/beego target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/valyala/quicktemplate target=_blank>quicktemplate<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - замена работы с шаблонами в Go. Похожа на работу с Jsp в Java. <a href=https://godoc.org/github.com/valyala/quicktemplate target=_blank>API<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/gramework/gramework target=_blank>gramework<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - от создателя <a href=https://github.com/valyala/fasthttp target=_blank>fasthttp<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/go-chi/chi target=_blank>chi<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - простой легковесный роутер как <a href=http://www.gorillatoolkit.org target=_blank>Gorilla<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>, только легче и идеоматичней. <a href=https://godoc.org/github.com/go-chi/chi target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://echo.labstack.com/ target=_blank>echo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - легковесный web-framework.</li><li><a href=https://github.com/gin-gonic/gin target=_blank>Gin<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - вроде как шустрый web-framework. <a href=https://gin-gonic.com/ target=_blank>Офицальный сайт<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/gin-gonic/gin target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/volatiletech/authboss target=_blank>authboss<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для аутентификации, авторизации. <a href=https://godoc.org/github.com/volatiletech/authboss target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/swithek/sessionup target=_blank>sessionup<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет управлять сессиями. <a href=https://godoc.org/github.com/swithek/sessionup target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></li><li><a href=https://github.com/unrolled/secure target=_blank>Secure<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - прослойка позволяет настраивать некоторую безопасность для web-приложений. <a href="https://pkg.go.dev/github.com/unrolled/secure?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/justinas/nosurf target=_blank>nosurf<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - помогает осущесвлять проверку безопасности для web-серверов. <a href="https://pkg.go.dev/github.com/justinas/nosurf?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://gokit.io/ target=_blank>go-kit<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - набор для создания микросервисов. <a href=https://github.com/go-kit/kit target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/pion/webrtc target=_blank>webrtc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - реализация WebRTC на GO.</li><li><a href=https://goa.design target=_blank>goa<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека позволяет быстро создавать api и микросервисы. Имеет свой DSL для описания. <a href=https://github.com/goadesign/goa target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://go-app.dev target=_blank>go-app<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё один интересный проект написания progressive web apps (PWA). С декларативным синтаксисом. <a href=https://github.com/maxence-charriere/go-app target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/go-ldap/ldap target=_blank>ldpap<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - реализация LDAP 3 на GO.</li><li><a href=https://go-zepto.com target=_blank>Zepto<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - обещают легковесный framework в Go-стиле.</li><li><a href=https://github.com/gopherjs/gopherjs target=_blank>GopherJS<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - компилятор из go в JS. <a href=https://pkg.go.dev/github.com/gopherjs/gopherjs/js target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://www.flogo.io target=_blank>flogo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - framework для создания микро-сервисов. <a href=https://github.com/project-flogo target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/livebud/bud target=_blank>bud<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - очередной мощный фреймворк для создания сайтов. Пока требует node.js. Будем наблюдать.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=openapi>OpenAPI</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#openapi class="gdoc-page__anchor clip flex align-center" title=" OpenAPI" aria-label=" OpenAPI" href=#openapi><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/ogen-go/ogen target=_blank>ogen<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://ogen.dev target=_blank>Официальный сайт<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=работа-с-сетью>Работа с сетью</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#работа-с-сетью class="gdoc-page__anchor clip flex align-center" title=" Работа с сетью" aria-label=" Работа с сетью" href=#%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0-%d1%81-%d1%81%d0%b5%d1%82%d1%8c%d1%8e><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/tidwall/evio target=_blank>Evio<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - работа с сетью, основанная на событиях.</li><li><a href=https://github.com/perlin-network/noise target=_blank>Noise<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Библиотека, позволяющая писать децентрализованные P2P приложения. <a href=https://godoc.org/github.com/perlin-network/noise target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/ulule/limiter target=_blank>limiter<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для разных ограничений в сети, типа количества запросов в секунду.</li><li><a href=https://github.com/google/gopacket target=_blank>GoPacket<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для работы с сетевыми пакетами от Google. <a href=https://pkg.go.dev/github.com/google/gopacket target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=работа-со-строками>Работа со строками</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#работа-со-строками class="gdoc-page__anchor clip flex align-center" title=" Работа со строками" aria-label=" Работа со строками" href=#%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0-%d1%81%d0%be-%d1%81%d1%82%d1%80%d0%be%d0%ba%d0%b0%d0%bc%d0%b8><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/araddon/dateparse target=_blank>Dateparse<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для парсинга строк, представляющих из себя различные форматы дат. <a href=https://godoc.org/github.com/araddon/dateparse target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/benhoyt/goawk target=_blank>GoAWK<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - реализация парсера языка AWK на Go. Есть возможность использовать прямо внутри Go. <a href=https://godoc.org/github.com/benhoyt/goawk target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=работа-со-временем>Работа со временем</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#работа-со-временем class="gdoc-page__anchor clip flex align-center" title=" Работа со временем" aria-label=" Работа со временем" href=#%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0-%d1%81%d0%be-%d0%b2%d1%80%d0%b5%d0%bc%d0%b5%d0%bd%d0%b5%d0%bc><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/jinzhu/now target=_blank>Now<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека расширяет некоторые методы для работы с датой. <a href=https://godoc.org/github.com/jinzhu/now target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/robfig/cron target=_blank>cron<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - реализация cron на GO. <a href=https://pkg.go.dev/github.com/robfig/cron target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/olebedev/when target=_blank>when<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - парсер времени с натурального языка.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=генерация-различных-id>Генерация различных ID</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#генерация-различных-id class="gdoc-page__anchor clip flex align-center" title=" Генерация различных ID" aria-label=" Генерация различных ID" href=#%d0%b3%d0%b5%d0%bd%d0%b5%d1%80%d0%b0%d1%86%d0%b8%d1%8f-%d1%80%d0%b0%d0%b7%d0%bb%d0%b8%d1%87%d0%bd%d1%8b%d1%85-id><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><p>Информация взята <a href="https://blog.kowalczyk.info/article/JyRZ/generating-good-random-and-unique-ids-in-go.html?utm_source=golangweekly&utm_medium=email" target=_blank>отсюда<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</p><div class=table-wrap><table><thead><tr><th>Пакет</th><th>Пример</th><th>Описание формата</th></tr></thead><tbody><tr><td><a href=https://github.com/segmentio/ksuid target=_blank>ksuid<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></td><td>0pPKHjWprnVxGH7dEsAoXX2YQvU</td><td>4 bytes of time (seconds) # 16 random bytes</td></tr><tr><td><a href=https://github.com/rs/ target=_blank>xid<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></td><td>b50vl5e54p1000fo3gh0</td><td>4 bytes of time (seconds) # 3 byte machine id # 2 byte process id # 3 bytes random</td></tr><tr><td><a href=https://github.com/kjk/betterguid target=_blank>betterguid<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></td><td>-Kmdih_fs4ZZccpx2Hl1</td><td>8 bytes of time (milliseconds) # 9 random bytes</td></tr><tr><td><a href=https://github.com/sony/sonyflake target=_blank>sonyflake<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></td><td>20f8707d6000108</td><td>~6 bytes of time (10 ms) # 1 byte sequence # 2 bytes machine id</td></tr><tr><td><a href=https://github.com/oklog/ulid target=_blank>ulid<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></td><td>01BJMVNPBBZC3E36FJTGVF0C4S</td><td>6 bytes of time (milliseconds) # 8 bytes random</td></tr><tr><td><a href=https://github.com/chilts/sid target=_blank>sid<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></td><td>1JADkqpWxPx-4qaWY47~FqI</td><td>8 bytes of time (ns) # 8 random bytes</td></tr><tr><td><a href=https://github.com/satori/go.uuid target=_blank>go.uuid<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></td><td>5b52d72c-82b3-4f8e-beb5-437a974842c</td><td>UUIDv4 from <a href=http://tools.ietf.org/html/rfc4122 target=_blank>RFC 4112<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> for comparison</td></tr><tr><td><a href=https://github.com/google/uuid target=_blank>uuid<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></td><td>UUIDs based on RFC 4122</td><td></td></tr></tbody></table></div><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=работа-с-hardware>Работа с hardware</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#работа-с-hardware class="gdoc-page__anchor clip flex align-center" title=" Работа с hardware" aria-label=" Работа с hardware" href=#%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0-%d1%81-hardware><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://gobot.io target=_blank>Gobot<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a><br>Библиотека позволяет программировать различные устройства. Репозиторий на <a href=https://github.com/hybridgroup/gobot target=_blank>Guthub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://gobot.io/documentation target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/ziutek/emgo target=_blank>Emgo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a><br>Позволяет писать микропрограммы для ARM Cortex-M based MCUs. Репозиторий на <a href=https://github.com/ziutek/emgo target=_blank>Github<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://ziutek.github.io/2018/03/30/go_on_very_small_hardware.html target=_blank>Блог<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> как это всё работает.</li><li><a href=https://periph.io/ target=_blank>Periph<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> от команды google <a href=https://github.com/google/periph target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/periph.io/x/periph target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://tinygo.org/ target=_blank>Tinygo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> <a href=https://github.com/tinygo-org/tinygo target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/f-secure-foundry/tamago target=_blank>TamaGo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - bare metal Go for ARM SoCs . Позволяет писать на GO для голых чипов AMD.</li><li><a href=https://github.com/jaypipes/ghw target=_blank>ghw<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - Golang HardWare discovery/inspection library. Позволяет получать информацию о конфигурации оборудовании, текущем состоянии.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=сетевые-framework>Сетевые framework</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#сетевые-framework class="gdoc-page__anchor clip flex align-center" title=" Сетевые framework" aria-label=" Сетевые framework" href=#%d1%81%d0%b5%d1%82%d0%b5%d0%b2%d1%8b%d0%b5-framework><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/TarsCloud/TarsGo target=_blank>TarsGo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Реализация tars протокола для Go. <a href=https://godoc.org/github.com/TarsCloud/TarsGo/tars target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><div class="flex align-center gdoc-page__anchorwrap"><h2 id=списки-и-наборы>Списки и наборы</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#списки-и-наборы class="gdoc-page__anchor clip flex align-center" title=" Списки и наборы" aria-label=" Списки и наборы" href=#%d1%81%d0%bf%d0%b8%d1%81%d0%ba%d0%b8-%d0%b8-%d0%bd%d0%b0%d0%b1%d0%be%d1%80%d1%8b><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/scylladb/go-set target=_blank>Go-Set<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - набор разных типов коллекций и операций с ними. <a href=https://godoc.org/github.com/scylladb/go-set target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/alvaroloes/enumer target=_blank>Enumer<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - генератор для enum.</li><li><a href=https://github.com/orcaman/concurrent-map target=_blank>concurrent-map<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - конкурентная мапа.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=игры>Игры</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#игры class="gdoc-page__anchor clip flex align-center" title=" Игры" aria-label=" Игры" href=#%d0%b8%d0%b3%d1%80%d1%8b><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://hajimehoshi.github.io/ebiten/ target=_blank>Ebiten<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Позволяет писать двухмерные игры. <a href=https://godoc.org/github.com/hajimehoshi/ebiten target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Краткая <a href=https://github.com/hajimehoshi/ebiten/wiki/Cheat-Sheet target=_blank>справка<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://hajimehoshi.github.io/ebiten target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/gonutz/prototype target=_blank>Prototype<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Простая библиотека для работы с канвой. <a href=https://godoc.org/github.com/gonutz/prototype/draw target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Библиотека для написания игр <a href=https://github.com/faiface/pixel target=_blank>pixel<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=графика>Графика</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#графика class="gdoc-page__anchor clip flex align-center" title=" Графика" aria-label=" Графика" href=#%d0%b3%d1%80%d0%b0%d1%84%d0%b8%d0%ba%d0%b0><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/llgcode/draw2d target=_blank>Draw2d<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для вывода графики. <a href=https://godoc.org/github.com/llgcode/draw2d target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/fogleman/gg target=_blank>Gg<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - визуализация двухмерной графики. <a href=https://godoc.org/github.com/fogleman/gg target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/mazznoer/colorgrad target=_blank>colorgrad<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет делать градиенты, шкалы цветов и всё такое. <a href=https://pkg.go.dev/github.com/mazznoer/colorgrad target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/jdxyw/generativeart target=_blank>generativeart<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет создавать абстрактные рисунки.</li><li><a href=https://github.com/disintegration/imaging target=_blank>imaging<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - изменение изображений - изменение масштаба, поворот и т.д.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=видео>Видео</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#видео class="gdoc-page__anchor clip flex align-center" title=" Видео" aria-label=" Видео" href=#%d0%b2%d0%b8%d0%b4%d0%b5%d0%be><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/modfy/go-fluent-ffmpeg target=_blank>Go Fluent FFmpeg<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - wrapper для ffmpeg. Позволяет работать с видеофайлами из программы на Go. <a href=https://pkg.go.dev/github.com/modfy/fluent-ffmpeg#section-readme target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=статистика-и-математика>Статистика и математика</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#статистика-и-математика class="gdoc-page__anchor clip flex align-center" title=" Статистика и математика" aria-label=" Статистика и математика" href=#%d1%81%d1%82%d0%b0%d1%82%d0%b8%d1%81%d1%82%d0%b8%d0%ba%d0%b0-%d0%b8-%d0%bc%d0%b0%d1%82%d0%b5%d0%bc%d0%b0%d1%82%d0%b8%d0%ba%d0%b0><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/jamiealquiza/tachymeter target=_blank>Tachymeter<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - подсчёт статистики с выводом в виде json, histogram и в консоль. <a href=https://godoc.org/github.com/jamiealquiza/tachymeter target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://www.gonum.org target=_blank>Gonum<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - мощная библиотека для различной математики и статистики. <a href=https://github.com/gonum/gonum target=_blank>Github<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/gonum.org/v1/gonum target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/shopspring/decimal target=_blank>decimal<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - работа с числами с заданной точностью. <a href=https://pkg.go.dev/github.com/shopspring/decimal target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=обработка-данных-на-потоке-и-прочее>Обработка данных на потоке и прочее</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#обработка-данных-на-потоке-и-прочее class="gdoc-page__anchor clip flex align-center" title=" Обработка данных на потоке и прочее" aria-label=" Обработка данных на потоке и прочее" href=#%d0%be%d0%b1%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%ba%d0%b0-%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85-%d0%bd%d0%b0-%d0%bf%d0%be%d1%82%d0%be%d0%ba%d0%b5-%d0%b8-%d0%bf%d1%80%d0%be%d1%87%d0%b5%d0%b5><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/RichardKnop/machinery target=_blank>Machinery<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> обработка сообщений. Работа с различными источниками. <a href=https://godoc.org/github.com/RichardKnop/machinery/v1 target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://bigslice.io/ target=_blank>Bigslice<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - аналог Spark на Go. <a href=https://github.com/grailbio/bigslice target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href="https://pkg.go.dev/github.com/grailbio/bigslice?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/ThreeDotsLabs/watermill target=_blank>watermill<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - работа с сообщениями. Возможность интегрироваться с Kafka, RabbitMQ.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=парсеры>Парсеры</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#парсеры class="gdoc-page__anchor clip flex align-center" title=" Парсеры" aria-label=" Парсеры" href=#%d0%bf%d0%b0%d1%80%d1%81%d0%b5%d1%80%d1%8b><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li>Интерпретатор GO <a href=https://github.com/containous/yaegi target=_blank>Yaegi<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://blog.containo.us/announcing-yaegi-263a1e2d070a target=_blank>Введение<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/containous/yaegi target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Работает как библиотека, так и как приложение командной строки. Позволяет парсить и запускать код на Go.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=коллекции>Коллекции</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#коллекции class="gdoc-page__anchor clip flex align-center" title=" Коллекции" aria-label=" Коллекции" href=#%d0%ba%d0%be%d0%bb%d0%bb%d0%b5%d0%ba%d1%86%d0%b8%d0%b8><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/dgraph-io/ristretto target=_blank>ristretto<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - конкурентный кеш. <a href=https://blog.dgraph.io/post/introducing-ristretto-high-perf-go-cache/ target=_blank>Описание в блоге<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/dgraph-io/ristretto target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/buraksezer/olric target=_blank>olric<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - распределённый in-memory кеш, ключ-значение. <a href=https://pkg.go.dev/github.com/buraksezer/olric target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=встраивание-ресурсов-теперь-не-актуально-так-как-с-версии-16-есть-встроенный-механизм>Встраивание ресурсов (теперь не актуально, так как с версии 1.6 есть встроенный механизм)</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#встраивание-ресурсов-теперь-не-актуально-так-как-с-версии-16-есть-встроенный-механизм class="gdoc-page__anchor clip flex align-center" title=" Встраивание ресурсов (теперь не актуально, так как с версии 1.6 есть встроенный механизм)" aria-label=" Встраивание ресурсов (теперь не актуально, так как с версии 1.6 есть встроенный механизм)" href=#%d0%b2%d1%81%d1%82%d1%80%d0%b0%d0%b8%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d1%80%d0%b5%d1%81%d1%83%d1%80%d1%81%d0%be%d0%b2-%d1%82%d0%b5%d0%bf%d0%b5%d1%80%d1%8c-%d0%bd%d0%b5-%d0%b0%d0%ba%d1%82%d1%83%d0%b0%d0%bb%d1%8c%d0%bd%d0%be-%d1%82%d0%b0%d0%ba-%d0%ba%d0%b0%d0%ba-%d1%81-%d0%b2%d0%b5%d1%80%d1%81%d0%b8%d0%b8-16-%d0%b5%d1%81%d1%82%d1%8c-%d0%b2%d1%81%d1%82%d1%80%d0%be%d0%b5%d0%bd%d0%bd%d1%8b%d0%b9-%d0%bc%d0%b5%d1%85%d0%b0%d0%bd%d0%b8%d0%b7%d0%bc><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/mjibson/esc target=_blank>esc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - встраивает файлы в бинарник, при этом их сжимая. <a href=https://godoc.org/github.com/mjibson/esc target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/GeertJohan/go.rice target=_blank>Rice<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - упаковка ресурсов в исполняемый файл. <a href=https://godoc.org/github.com/GeertJohan/go.rice target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/gobuffalo/packr target=_blank>packr<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> -создан на основе rice, но улучшен. <a href=https://godoc.org/github.com/gobuffalo/packr target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/rakyll/statik target=_blank>statik<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - чем-то похож на esc. <a href=https://godoc.org/github.com/rakyll/statik target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/aletheia-icu/broccoli target=_blank>broccoli<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - встраивает и сжимает ресурсы в бинарник. <a href="https://pkg.go.dev/aletheia.icu/broccoli/fs?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/lu4p/binclude target=_blank>binclude<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - тоже умеет сжимать. Обращение к ерсурсам практически также, как и к ресурсам системы. <a href="https://pkg.go.dev/github.com/lu4p/binclude?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=вспомогательные-утилиты>Вспомогательные утилиты</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#вспомогательные-утилиты class="gdoc-page__anchor clip flex align-center" title=" Вспомогательные утилиты" aria-label=" Вспомогательные утилиты" href=#%d0%b2%d1%81%d0%bf%d0%be%d0%bc%d0%be%d0%b3%d0%b0%d1%82%d0%b5%d0%bb%d1%8c%d0%bd%d1%8b%d0%b5-%d1%83%d1%82%d0%b8%d0%bb%d0%b8%d1%82%d1%8b><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/jondot/goweight target=_blank>Goweight<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - анализ размера используемых пакетов.</li><li><a href=https://github.com/psampaz/go-mod-outdated target=_blank>go-mod-outdated (go-mod-outdated)<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - анализ устаревших пакетов в зависимостях.</li><li><a href=https://github.com/adonovan/spaghetti target=_blank>Spaghetti<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - анализ зависимостей в браузере.</li><li><a href=https://github.com/nikolaydubina/go-binsize-treemap target=_blank>Go binary size SVG treemap<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - рисует SVG карту библиотек в бинарнике. Примерно как Goweight.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=работа-со-звуком>Работа со звуком</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#работа-со-звуком class="gdoc-page__anchor clip flex align-center" title=" Работа со звуком" aria-label=" Работа со звуком" href=#%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0-%d1%81%d0%be-%d0%b7%d0%b2%d1%83%d0%ba%d0%be%d0%bc><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/faiface/beep target=_blank>beep<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - работа со звуком в форматах WAV, MP3, OGG, and FLAC. <a href="https://pkg.go.dev/github.com/faiface/beep?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=мониторинг>Мониторинг</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#мониторинг class="gdoc-page__anchor clip flex align-center" title=" Мониторинг" aria-label=" Мониторинг" href=#%d0%bc%d0%be%d0%bd%d0%b8%d1%82%d0%be%d1%80%d0%b8%d0%bd%d0%b3><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/divan/expvarmon target=_blank>ExpvarMon<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека позволяет мониторить в консоли программу на Go.</li><li><a href=https://github.com/felixge/fgprof target=_blank>fgprof<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - мониторинг загрузки процессора. Достаточно простой и наглядный. <a href="https://pkg.go.dev/github.com/felixge/fgprof?tab=doc" target=_blank>GoDoc.<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></li><li><a href=https://github.com/arl/statsviz target=_blank>statviz<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - рисует разные графики в runtime.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=opencv>OpenCV</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#opencv class="gdoc-page__anchor clip flex align-center" title=" OpenCV" aria-label=" OpenCV" href=#opencv><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://gocv.io/ target=_blank>gocv<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для работы с OpenCv из Go. <a href=https://github.com/hybridgroup/gocv target=_blank>GitHub<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/go-opencv/go-opencv target=_blank>Работа с открытой библиотека OpenCV<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - wrapper для OpenCv на Go.</li><li><a href=https://github.com/hybridgroup/gocv target=_blank>GoCV<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё один wrapper. Поддерживает cuda.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=офис>Офис</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#офис class="gdoc-page__anchor clip flex align-center" title=" Офис" aria-label=" Офис" href=#%d0%be%d1%84%d0%b8%d1%81><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/360EntSecGroup-Skylar/excelize target=_blank>excelize<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - работа с excel файлами из Go. <a href=https://xuri.me/excelize target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://pkg.go.dev/github.com/360EntSecGroup-Skylar/excelize/v2 target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=goroutines>goroutines</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#goroutines class="gdoc-page__anchor clip flex align-center" title=" goroutines" aria-label=" goroutines" href=#goroutines><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/matryer/runner/blob/master/runner.go target=_blank>Runner для goroutines<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Позволяет легко управлять запущенными goroutines.</li><li><a href=https://github.com/panjf2000/ants target=_blank>ants<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Позволяет создавать с пулом goroutings. <a href=https://godoc.org/github.com/panjf2000/ants target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Управление gouroutines <a href=https://github.com/oklog/run target=_blank>Run<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/oklog/run target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/Jeffail/tunny target=_blank>tunny<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - создание пулов gorouting. Похоже как в джаве сделаны Executors. <a href=https://pkg.go.dev/github.com/Jeffail/tunny target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/uber-go/goleak target=_blank>goleak<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - поиск утечек в рутинах.</li><li><a href=https://github.com/sourcegraph/conc target=_blank>Conc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - ещё одна реализация часто встречающихся операций с потоками. Пулы, параллельная работа с мапами и т.д.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=шифровние>Шифровние</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#шифровние class="gdoc-page__anchor clip flex align-center" title=" Шифровние" aria-label=" Шифровние" href=#%d1%88%d0%b8%d1%84%d1%80%d0%be%d0%b2%d0%bd%d0%b8%d0%b5><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/FiloSottile/age target=_blank>age<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> -библиотека для семмитричного и ассиметриченого шифрования. Может использоватся как отдельная утилита <a href=https://pkg.go.dev/filippo.io/age#section-documentation target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=события>События</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#события class="gdoc-page__anchor clip flex align-center" title=" События" aria-label=" События" href=#%d1%81%d0%be%d0%b1%d1%8b%d1%82%d0%b8%d1%8f><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/nuttech/bell target=_blank>Колокол<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - простая библиотека для работы с событиями. Статья от авторов на <a href=https://habr.com/ru/post/651453 target=_blank>Хабре<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/ReactiveX/RxGo target=_blank>RxGo<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - одна из самых популярных библиотек для работы на событиях.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=интеграция-с-другими-яп>Интеграция с другими ЯП</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#интеграция-с-другими-яп class="gdoc-page__anchor clip flex align-center" title=" Интеграция с другими ЯП" aria-label=" Интеграция с другими ЯП" href=#%d0%b8%d0%bd%d1%82%d0%b5%d0%b3%d1%80%d0%b0%d1%86%d0%b8%d1%8f-%d1%81-%d0%b4%d1%80%d1%83%d0%b3%d0%b8%d0%bc%d0%b8-%d1%8f%d0%bf><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://gitlab.com/pygolo/py target=_blank>py<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - интеграция с Python. <a href=https://pkg.go.dev/gitlab.com/pygolo/py target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul><hr><div class="flex align-center gdoc-page__anchorwrap"><h2 id=разное>Разное</h2><a data-clipboard-text=https://maxtar.github.io/programming/go/useful-libs/#разное class="gdoc-page__anchor clip flex align-center" title=" Разное" aria-label=" Разное" href=#%d1%80%d0%b0%d0%b7%d0%bd%d0%be%d0%b5><svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a></div><ul><li><a href=https://github.com/abadojack/whatlanggo target=_blank>Распознавание естественных языков<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/msoap/byline target=_blank>Фильтрация строк из ридера как в Groovy и Unix<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/msoap/byline target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/ahmetb/go-linq target=_blank>linq, как в C# в Go<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/ahmetb/go-linq target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/gowww target=_blank>Множество библиотек для web<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/beevik/etree target=_blank>Etree<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Библиотека для работы с XML.</li><li>Рисование графиков<ul><li><a href=https://github.com/wcharczuk/go-chart target=_blank>go-chart<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/Arafatk/glot target=_blank>Glot<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/Arafatk/glot target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul></li><li><a href=https://github.com/rakyll/go-hardware target=_blank>Список проектов для работы с железом<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Reducemap на Go <a href=https://github.com/chrislusf/gleam target=_blank>gleam<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Анализ данных.</li><li>Паук для web <a href=https://github.com/asciimoo/colly target=_blank>Colly<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://godoc.org/github.com/asciimoo/colly target=_blank>Документация<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Работа с клавиатурой <a href=https://github.com/eiannone/keyboard target=_blank>keyboard<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Глобальных перехват Ctrl+C и прочих прерываний <a href=https://github.com/TheCodeTeam/goodbye target=_blank>Goodbye<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. <a href=https://blog.thecodeteam.com/2017/10/02/say-hello-goodbye/ target=_blank>Статья от автора<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Работа с изображениями <a href=https://github.com/davidbyttow/govips target=_blank>govips<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li>Клиент для <a href=https://github.com/olivere/elastic target=_blank>elasticsearch<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Запись в <a href=https://www.ribice.ba/golang-elastic target=_blank>блоге<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/securego/gosec target=_blank>Gosec<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>. Библиотека для сканирования исходного кода на Go и выявление проблем с безопасностью.</li><li><a href=https://github.com/sohamkamani/detective target=_blank>Detective<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - мониторинг распределённых систем. <a href=https://godoc.org/github.com/sohamkamani/detective target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/percolate/charlatan target=_blank>Charlatan<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> позволяет автоматически создавать заглушки для программных интерфейсов.</li><li><a href=https://github.com/olekukonko/tablewriter target=_blank>Tablewriter<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - вывод таблиц в текстовом форматре.</li><li><a href=https://github.com/alecthomas/chroma target=_blank>Chroma<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - подсветка синтаксиса. <a href=https://godoc.org/github.com/alecthomas/chroma target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/uber/prototool target=_blank>Prototool<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> от Uber. Альтернативная работа с protobuf. <a href=https://godoc.org/github.com/uber/prototool target=_blank>Godoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/grailbio/bigmachine target=_blank>BigMachine<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - библиотека для развертывания кластера. Например, работает в связке с <a href=https://bigslice.io/ target=_blank>Bigslice<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/Xuanwo/go-locale target=_blank>g-locale<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - определение установленной локали пользователя. <a href="https://pkg.go.dev/github.com/Xuanwo/go-locale?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/guptarohit/asciigraph target=_blank>ASCIIGraph<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - вывод графиков в консоли при помощи ASCII символов. <a href="https://pkg.go.dev/github.com/guptarohit/asciigraph?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/go-playground/validator target=_blank>validator<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - проверка значений в структурах. <a href="https://pkg.go.dev/github.com/go-playground/validator?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/dustin/go-humanize target=_blank>go-humanize<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - позволяет переводить числа в байты, удобное время и прочее. <a href="https://pkg.go.dev/github.com/dustin/go-humanize?tab=doc" target=_blank>GoDoc<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li><li><a href=https://github.com/cockroachdb/errors target=_blank>error<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - набор обёрток для обработки ошибок.</li><li><a href=https://github.com/autom8ter/dagger target=_blank>dagger<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - реализация графов.</li><li><a href=https://pkg.go.dev/github.com/bitfield/script#section-readme target=_blank>script<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a> - работа из Go c командами консоли. Возможно написание shell скриптов. <a href=https://bitfieldconsulting.com/golang/scripting target=_blank>Описание<svg class="gdoc-icon gdoc_link"><use xlink:href="#gdoc_link"/></svg></a>.</li></ul></article><div class="gdoc-page__footer flex flex-wrap justify-between"><span class=gdoc-page__nav><a class="gdoc-page__nav--prev flex align-center" href=/programming/go/i18n-i10n/ title="Internationalization (i18n) и Localization (l10n) в Go"><i class=gdoc-icon>gdoc_arrow_left_alt</i>
- Internationalization (i18n) и Localization (l10n) в Go
- </a></span><span class=gdoc-page__nav><a class="gdoc-page__nav--next flex align-center" href=/programming/go/useful-programs/ title="Полезные программы на Go">Полезные программы на Go
- <i class=gdoc-icon>gdoc_arrow_right_alt</i></a></span></div></div></main><footer class=gdoc-footer><nav class="container flex"><div><section class="flex flex-wrap align-center"><span class="gdoc-footer__item gdoc-footer__item--row"></span></section></div><div class="flex flex-25 justify-end"><span class="gdoc-footer__item text-right"><a class="gdoc-footer__link fake-link" href=# aria-label><svg class="gdoc-icon gdoc_keyboard_arrow_up"><use xlink:href="#gdoc_keyboard_arrow_up"/></svg>
- <span class=hidden-mobile></span></a></span></div></nav></footer></div><script defer src=/js/search-49cf88d4.bundle.min.js></script></body></html>
|