¡Bienvenido al repositorio de Desafíos Diarios de Programación! 🎉 Puedes elegir los lenguajes y Herramientas que desees.
Cada Mini Challenge tiene un valor de 5 PenguPoints. Recuerda que para ganar PenguPoints por Mini Challenges debes cumplir los siguiente requisitos:
- Debes registrar tu progreso subiendo tus ejercicios al typeform de entrega https://forms.gle/TyUHPaj6HjGvuYQ18
- El código presentado debe ser funcional
- El código presentado debe cumplir con lo solicitado por el ejercicio
- Debes enviar los minichallenges antes de que finalice el mes de Noviembre
-
Mini Servidor Express: Crear un servidor Express básico que responda "Hello World" en la ruta principal.
-
Maestro de Rutas: Implementar 4 rutas diferentes (GET) que devuelvan diferentes tipos de respuestas (texto, JSON, HTML).
-
Manejador de Métodos: Crear un endpoint que responda de manera única a GET, POST, PUT y DELETE.
-
Encriptador de contraseñas: Implementar una función que haga hash de contraseñas usando bcrypt.
-
Formateador de Tokens: Crear una función que tome un token JWT y lo divida en sus tres componentes (header, payload, signature).
-
Generador de Tokens: Crear un generador de JWT simple con payload personalizable.
-
Administrador de Cookies: Implementar funciones para establecer y leer cookies seguras.
-
CRUD de Archivos: Crear un sistema CRUD que persista datos en un archivo JSON.
-
Búsqueda y Ordenamiento: Agregar funcionalidad de búsqueda y ordenamiento a una colección de datos.
-
Sanitizador de Entrada: Crear una función que limpie y valide entrada de usuario contra XSS.
- Protector CSRF: Implementar un sistema simple de tokens CSRF.
- Generador de URLs Amigables: Convertir títulos de posts en URLs amigables (eliminar espacios, caracteres especiales, etc.)
- Manejador de Errores HTTP: Crear un sistema que maneje diferentes tipos de errores HTTP y devuelva respuestas apropiadas
- Sistema de Ranking: Implementar un algoritmo que calcule la posición de posts basado en votos y tiempo.
- Debouncer: Implementar una función que limite la frecuencia de ejecución de operaciones (útil para votación).
- Buffer de Operaciones: Crear un sistema que agrupe múltiples operaciones similares en una sola.
- Analizador de Cadenas de Consulta: Crear un parser que convierta query strings en objetos y viceversa.
- Formateador de Fechas: Crear un sistema que maneje diferentes formatos de fecha y calcule tiempos relativos.
- Comprobador de Permisos: Crea una función que verifique si un usuario tiene los permisos necesarios para una acción.
- Validador de Tarjeta: Función que verifica si un número de tarjeta de crédito es válido usando el algoritmo de Luhn.
¡Buena suerte y a divertirse codeando! 🐧