Una biblioteca Java para convertir objetos Java a JSON y viceversa, incluso si no tienes el código fuente de esos objetos.
duke-git/lancet
Biblioteca de utilidades para Go con más de 700 funciones reutilizables para cadenas, slices, fechas y horas, redes, criptografía y más, inspirada en lodash.
- Estrellas
- 5,300
- Forks
- 518
- Issues abiertos
- 11
- Último commit
- hace 9 horas
¿Qué es?
Lancet es una biblioteca de funciones de utilidad para Go que cubre necesidades habituales como la manipulación de cadenas, las operaciones con slices y mapas, el manejo de fechas y horas, las redes y la criptografía. Está inspirada en Apache Commons de Java y lodash.js, y busca ofrecer a los desarrolladores de Go un conjunto reutilizable de funciones auxiliares para que no tengan que reescribirlas en cada proyecto.
La versión 2.x se basa en los genéricos de Go y requiere Go 1.18 o posterior. La línea v1.x sigue disponible para versiones anteriores de Go. La biblioteca depende únicamente de la biblioteca estándar de Go y de paquetes de golang.org/x, y todas las funciones exportadas incluyen pruebas unitarias.
Las funciones están organizadas en paquetes como strutil, slice, datetime, cryptor, convertor y concurrency. Cada paquete se importa por separado, así que solo incluyes lo que usas.
Funciones clave
- 01Ofrece más de 700 funciones de utilidad para cadenas, slices, fechas y horas, redes, criptografía y más.
- 02Usa los genéricos de Go en v2.x para ofrecer funciones auxiliares con seguridad de tipos.
- 03Depende únicamente de la biblioteca estándar de Go y de golang.org/x.
- 04Todas las funciones exportadas tienen pruebas unitarias.
- 05Está organizada en paquetes separados para que importes solo lo que necesitas.
Casos de uso
- Sustituir funciones auxiliares para cadenas, slices o mapas escritas a mano en servicios Go.
- Añadir operaciones aritméticas con fechas o sumas seguras de meses y años a un proyecto Go.
- Usar funciones auxiliares criptográficas habituales, como AES, RSA, HMAC y algoritmos de la serie SM.
- Simplificar patrones de concurrencia como fan-in, canalizaciones de canales y bloqueos por clave.
Inicio rápido
- 1
Instala el módulo v2 con go get
go get github.com/duke-git/lancet/v2 - 2
Importa el paquete que necesites, por ejemplo, strutil
import "github.com/duke-git/lancet/v2/strutil"
Antes de usarlo
- Para v2 se requiere Go 1.18 o una versión posterior; las versiones anteriores de Go deben usar la rama v1.
Temas
Preguntas frecuentes
- ¿Qué es lancet?
- Biblioteca de utilidades para Go con más de 700 funciones reutilizables para cadenas, slices, fechas y horas, redes, criptografía y más, inspirada en lodash. Lancet es una biblioteca de funciones de utilidad para Go que cubre necesidades habituales como la manipulación de cadenas, las operaciones con slices y mapas, el manejo de fechas y horas, las redes y la criptografía. Está inspirada en Apache Commons de Java y lodash.js, y busca ofrecer a los desarrolladores de Go un conjunto reutilizable de funciones auxiliares para que no tengan que reescribirlas en cada proyecto.
- ¿lancet es gratuito? ¿Qué licencia tiene?
- lancet es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿lancet sigue mantenido?
- Mantenimiento activo. El último commit de lancet fue el 24 oct 2026.
- ¿Para qué puedo usar lancet?
- Sustituir funciones auxiliares para cadenas, slices o mapas escritas a mano en servicios Go. Añadir operaciones aritméticas con fechas o sumas seguras de meses y años a un proyecto Go. Usar funciones auxiliares criptográficas habituales, como AES, RSA, HMAC y algoritmos de la serie SM. Simplificar patrones de concurrencia como fan-in, canalizaciones de canales y bloqueos por clave.
- ¿Cómo se instala lancet?
- Instala el módulo v2 con go get: go get github.com/duke-git/lancet/v2 Importa el paquete que necesites, por ejemplo, strutil: import "github.com/duke-git/lancet/v2/strutil"
- ¿Dónde consigo lancet?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/duke-git/lancet
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Una biblioteca de caché rápida, concurrente y limitada por memoria para Go, con expulsión basada en el costo y admisión TinyLFU.
Una alternativa pura en PHP que ofrece una implementación parcial de la extensión Mbstring para entornos donde no está instalada.
Una biblioteca de Go que hace que la concurrencia estructurada sea más segura y sencilla, con grupos de espera, pools acotados, flujos ordenados y propagación de panics.
Una pequeña biblioteca de Go con funciones para convertir tamaños en bytes, tiempos, números y ordinales en cadenas fáciles de leer.
Implementación en Go de un nodo de Lightning Network que gestiona canales, enruta pagos y ofrece APIs gRPC y REST.