Repolode
duke-git

duke-git/lancet

Библиотека утилит для Go: более 700 вспомогательных функций для строк, срезов, дат и времени, сетей, криптографии и многого другого, вдохновлённая lodash.

Звёзды
5,300
Форки
518
Открытые issues
11
Последний коммит
9 часов назад

Что это?

Lancet — библиотека утилит для Go, которая закрывает распространённые задачи: обработку строк, работу со срезами и map, операции с датой и временем, сетевые функции и криптографию. Она вдохновлена Apache Commons для Java и lodash.js и предлагает разработчикам на Go набор переиспользуемых функций, чтобы не приходилось реализовывать их заново в каждом проекте.

Ветка 2.x основана на дженериках Go и требует Go 1.18 или новее. Ветка v1.x по-прежнему доступна для старых версий Go. Библиотека зависит только от стандартной библиотеки Go и пакетов golang.org/x; для каждой экспортируемой функции есть модульные тесты.

Функции сгруппированы по пакетам, например strutil, slice, datetime, cryptor, convertor и concurrency. Каждый пакет импортируется отдельно, поэтому можно подключать только то, что используется.

Ключевые возможности

  • 01Предоставляет более 700 утилит для работы со строками, срезами, датой и временем, сетью, криптографией и многим другим.
  • 02В версии 2.x использует дженерики Go для типобезопасных вспомогательных функций.
  • 03Зависит только от стандартной библиотеки Go и golang.org/x.
  • 04Для каждой экспортируемой функции есть модульные тесты.
  • 05Функции сгруппированы по отдельным пакетам, поэтому можно импортировать только необходимые.

Сценарии использования

  • Замена написанных вручную функций для работы со строками, срезами или map в сервисах на Go.
  • Добавление в проект на Go арифметики дат или безопасного прибавления месяцев и лет.
  • Использование распространённых криптографических функций, например AES, RSA, HMAC и алгоритмов семейства SM.
  • Упрощение конкурентных шаблонов, таких как fan-in, конвейеры на каналах и блокировки по ключу.

Быстрый старт

  1. 1

    Установите модуль v2 с помощью go get

    go get github.com/duke-git/lancet/v2
  2. 2

    Импортируйте нужный пакет, например strutil

    import "github.com/duke-git/lancet/v2/strutil"

Что важно знать

  • Для v2 требуется Go 1.18 или новее; в более старых версиях Go нужно использовать ветку v1.

Темы

Частые вопросы

Что такое lancet?
Библиотека утилит для Go: более 700 вспомогательных функций для строк, срезов, дат и времени, сетей, криптографии и многого другого, вдохновлённая lodash. Lancet — библиотека утилит для Go, которая закрывает распространённые задачи: обработку строк, работу со срезами и map, операции с датой и временем, сетевые функции и криптографию. Она вдохновлена Apache Commons для Java и lodash.js и предлагает разработчикам на Go набор переиспользуемых функций, чтобы не приходилось реализовывать их заново в каждом проекте.
lancet можно использовать бесплатно? Какая у него лицензия?
lancet распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
lancet всё ещё поддерживается?
Активно поддерживается. Последний коммит в lancet — 24 окт. 2026 г..
Для чего можно использовать lancet?
Замена написанных вручную функций для работы со строками, срезами или map в сервисах на Go. Добавление в проект на Go арифметики дат или безопасного прибавления месяцев и лет. Использование распространённых криптографических функций, например AES, RSA, HMAC и алгоритмов семейства SM. Упрощение конкурентных шаблонов, таких как fan-in, конвейеры на каналах и блокировки по ключу.
Как установить lancet?
Установите модуль v2 с помощью go get: go get github.com/duke-git/lancet/v2 Импортируйте нужный пакет, например strutil: import "github.com/duke-git/lancet/v2/strutil"
Где скачать lancet?
Исходный код и инструкции по установке — на GitHub: https://github.com/duke-git/lancet

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты