Sobre el proyecto
Wavelen es una aplicación web ligera y autoalojada diseñada para guardar y organizar paletas de colores personales. Permite a los usuarios mantener listas privadas de códigos de color hexadecimales, organizadas en colecciones personalizables. La aplicación ofrece tanto una interfaz de usuario web integrada como una API RESTful completa para la interacción programática.
Las características principales incluyen:
- **Gestión personal de colores**: Los usuarios pueden registrarse, iniciar sesión y gestionar sus propias colecciones de colores. Cada cuenta comienza con una colección "Main" predeterminada, pero los usuarios pueden crear colecciones adicionales con nombre.
- **Armonías de colores**: La API pública ofrece endpoints para calcular armonías de colores como complementarios, tríadas y rampas para cualquier código hex dado.
- **Acceso a datos públicos**: Aunque las colecciones específicas de cada usuario son privadas, el sistema expone un feed público de todos los colores, lo que permite ordenarlos por valor hex.
- **Stack tecnológico**: Creado con Go (orientado a Go 1.27), PostgreSQL y pgx v5. Admite desarrollo local mediante Docker Compose e incluye pruebas de integración con testcontainers.
- **API y autenticación**: El acceso seguro a recursos privados requiere un token de portador obtenido mediante inicio de sesión. Los endpoints públicos, como la información de versión y los listados generales de colores, no requieren autenticación.
El proyecto está estructurado para poder desplegarse fácilmente de forma local o mediante Docker, con la configuración gestionada a través de variables de entorno. Incluye registro con IDs de correlación para el rastreo de solicitudes y sigue prácticas estándar de CI/CD para versionado y pruebas.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.