hellish
POSIX shell nacido de los retos de minishell y 42sh. Desarrollado con riguroso TDD, parser determinista de comandos, pipelines y gestión de procesos sin memory leaks.
Univers42 es el laboratorio de software e ingeniería de sistemas forjado por la comunidad de Escuela 42. Creamos shells POSIX con TDD, sanitizadores de memoria, simuladores de exámenes, seguridad criptográfica y motores en Rust compilados a WebAssembly.
Prueba comandos reales, ejecuta un test de francinette simulado, verifica memory leaks con Torturette o simula un examen de 42.
Filtra por disciplina, lenguaje o nivel del cursus de Escuela 42. Todos los repositorios son de código abierto con licencias libres.
POSIX shell nacido de los retos de minishell y 42sh. Desarrollado con riguroso TDD, parser determinista de comandos, pipelines y gestión de procesos sin memory leaks.
Instalador en un solo comando para la suite Francinette, el framework de testing imprescindible para validar proyectos del cursus de 42.
Herramienta de depuración para rastrear la asignación dinámica (malloc/free) de tus programas antes de la evaluación. ¡Evita ceros inesperados!
Simulador de terminal para evaluaciones técnicas: modos práctica y examen real, ejercicios con enunciados, corrección con diffs y cuenta atrás de 3 horas.
Suite de preparación y ejercicios de examen para superar las evaluaciones oficiales de Escuela 42.
Proyecto de ciberseguridad defensiva en Rust para aprender criptografía aplicada y proteger secretos diarios con cifrado zero-knowledge.
El paraguas CLI para la suite 42 (grobase + vault42): secretos zero-knowledge, autenticación y distribución multi-canal firmada.
Orquestador de máquinas virtuales tipo I y tipo II con QEMU/VirtualBox para simplificar el despliegue del proyecto Born2beroot.
Configuración y mejores prácticas de ingeniería para Claude Code: skills, hooks, rules y scripts para reducir dramáticamente el consumo de tokens.
Motor determinista de layout de grafos y diagramas en Rust compilado a WebAssembly (DAG, árboles, fuerza dirigida) con visor WebGL2 para grandes redes.
Oculta tu IP en cualquier sistema Linux: redirige el tráfico de aplicaciones, usuarios y contenedores a través de nodos Tor rotativos con fail-closed.
Motor de renderizado de Ray Tracing en C puro (miniRT): simulación geométrica de esferas, cilindros, luces especulares y sombras difusas.
Servidor de mensajería en tiempo real basado en el protocolo IRC con arquitectura orientada a eventos multiplexada con poll/epoll.
Motor de renderizado de dibujo vectorial estilo Excalidraw implementado en Rust para máxima velocidad en el navegador.
Convertidor de gráficos rasterizados (PNG/JPEG) a vectores SVG escalables escrito en Rust.
Librería extendida en C 100% conforme a la Norminette de 42, con listas enlazadas, hashes, colas y funciones matemáticas avanzadas.
Framework ligero para capturar y propagar errores en C eficientemente sin saturar el código con sentencias repetitivas.
Implementación de manejo de excepciones estilo Java (try, catch, throw, finally) en C puro mediante setjmp/longjmp.
Servidor MCP (Model Context Protocol) para conectar agentes de inteligencia artificial directamente con las Chrome DevTools.
Infraestructura multi-servicio contenedorizada sobre máquinas virtuales Linux cumpliendo las reglas estrictas de 42 Inception.
Programas autorreplicantes (Colleen, Grace, Sully) en Ensamblador NASM x86_64 y C puro.
En 42 no usamos librerías de alto nivel: construimos las bases desde cero con C, Rust y arquitectura rigurosa.
Nacido tras las batallas de Minishell y 42sh. Concebido bajo TDD estricto y técnicas DevOps. Manejo POSIX impecable, pipelines bidireccionales, redirecciones compuestas y cero fugas de descriptores.
t_ast_node *parse_pipeline(t_lexer *lex) {
t_ast_node *node = parse_command(lex);
while (match_token(lex, TOKEN_PIPE)) {
t_ast_node *pipe_node = ast_node_new(NODE_PIPE);
pipe_node->left = node;
pipe_node->right = parse_command(lex);
node = pipe_node;
}
return node;
} El destructor de memory leaks definitivo para el cursus de 42. Intercepta malloc, calloc, realloc y free mediante hooks en tiempo de compilación. Detecta punteros colgantes y doble liberación.
void *tracked_malloc(
size_t size,
const char *file,
int line
) {
void *ptr = real_malloc(size);
if (!ptr) return NULL;
t_alloc_record rec = {
.addr = (uintptr_t)ptr,
.bytes = size,
.origin = file,
.line_no = line
};
record_insert(&g_heap_registry, rec);
return ptr;
} La ansiedad del examen desaparece cuando has entrenado 50 veces bajo las mismas condiciones. Simula el entorno de examen de 42: cuenta atrás, enunciados aleatorios por Rank, pruebas automáticas y puntuación inmediata.
def evaluate_solution(
binary_path, reference_path, test_cases
):
passed = 0
for inp in test_cases:
user_out = run_isolated(binary_path, inp, timeout=1.0)
ref_out = run_isolated(reference_path, inp, timeout=1.0)
if user_out.stdout != ref_out.stdout:
return GradeResult(success=False, error_at=inp)
passed += 1
return GradeResult(success=True, score=100) Suite de herramientas de seguridad en Rust con arquitectura zero-knowledge. vault42 cifra y gestiona credenciales, mientras que 42ctl unifica la distribución multi-canal vía Homebrew Tap.
pub fn encrypt_secret(
payload: &[u8],
key: &Key
) -> Result<CipherEnvelope, Error> {
let cipher = ChaCha20Poly1305::new(key);
let nonce = generate_nonce(&mut OsRng);
let ciphertext = cipher.encrypt(&nonce, payload)
.map_err(|_| Error::EncryptionFailed)?;
Ok(CipherEnvelope { nonce, ciphertext })
} Cada círculo del tronco común tiene desafíos que inspiraron proyectos en Univers42. Descubre qué herramientas aceleran cada etapa.
Punteros, arrays, memoria dinámica en la pila y primeros pasos con la Norminette.
Descriptores de archivo, buffers estáticos, variadic functions y administración Linux.
Forks, pipes, dup2, algoritmos de ordenación en pila y arquitectura de procesos.
Condiciones de carrera, sincronización multi-hilo y prevención de deadlocks.
Álgebra lineal, renderizado de rayos y direccionamiento TCP/IP subnetting.
Sockets TCP no bloqueantes con epoll, contenedores Docker multi-servicio y C++98.
Arquitectura web distribuida en tiempo real con WebSockets, WebGL y Rust compilado a WASM.
Criptografía de zero-knowledge, auditoría de binarios y servidores MCP para agentes.
“The tools are the projects.
The projects are the tools.”
Univers42 nació para no conformarse con terminar los proyectos obligatorios del cursus de Escuela 42. Diseñamos los sanitizadores, shells, engines y suites de examen que aceleran la excelencia técnica de cualquier builder en la red 42. Sin librerías mágicas, sin memory leaks y con código 100% público y libre.
100% código abierto bajo licencias permisivas. Sin muros de pago ni dependencias propietarias.
Verificado con Valgrind, AddressSanitizer y rastreo determinista bloque a bloque.
Entendemos la máquina desde el byte: desde ASTs y forks en C hasta cifrado en Rust y WASM.
THE PEOPLE BEHIND THE CODE
Miembros con afiliación pública a la organización Univers42 en GitHub.
6 miembros públicos. La lista se obtiene automáticamente de GitHub al generar la web.