Category: Desarrollo

Dilema de seguridad del verificador eBPF: un nuevo entorno de ejecución aislado

2025-04-15

eBPF, una tecnología fundamental en el kernel de Linux, enfrenta vulnerabilidades de seguridad y desafíos de complejidad en su verificador. Los investigadores proponen un cambio de paradigma: definir los programas BPF como aplicaciones de modo kernel que requieren aislamiento dedicado. Se diseñó un nuevo entorno de ejecución para aislar los programas BPF, mejorando la seguridad y la escalabilidad de eBPF. Esta investigación profundiza en el verificador eBPF de Linux v6.16, revelando propiedades de seguridad, dilemas de capacidad y dilemas de corrección en su análisis de ruta completa. Se propone un marco de seguridad híbrido que combina verificación y aislamiento, apuntando hacia un futuro más seguro para eBPF.

Desarrollo

Componentes de Servidor React: Desenredando la Obtención de Datos del Frontend

2025-04-15

Este artículo explora cómo los Componentes de Servidor React resuelven las complejidades de la obtención de datos del frontend. Las APIs REST tradicionales tienen dificultades para mantenerse al día con las necesidades cambiantes de la IU, lo que lleva a la redundancia de datos o a datos insuficientes. El autor propone un enfoque BFF (Backend for Frontend), introduciendo el concepto de ViewModel en el backend, permitiendo que el servidor devuelva directamente los datos específicos que cada componente necesita. Al descomponer las funciones ViewModel en unidades más pequeñas y aprovechar la sintaxis JSX, se logra un acoplamiento estrecho entre los componentes y la lógica de carga de datos, lo que resulta en una arquitectura frontend eficiente y fácil de mantener. Este método es similar en espíritu a Async XHP, integrando a la perfección la obtención de datos y la representación de la IU, pero evita las limitaciones de Async XHP en aplicaciones altamente interactivas.

Desarrollo Obtención de Datos

Una Aventura Curiosa Implementando RNG y Coseno en Nix Funcionalmente Puro

2025-04-15
Una Aventura Curiosa Implementando RNG y Coseno en Nix Funcionalmente Puro

Esta publicación detalla la experiencia del autor al implementar un generador de números aleatorios y una función coseno en NixOS, una distribución de Linux construida sobre el lenguaje Nix. La naturaleza puramente funcional de Nix presenta desafíos al trabajar con aleatoriedad del sistema y funciones matemáticas estándar. El autor explora varios enfoques, incluyendo el uso de `runCommandLocal` de Nix e implementaciones personalizadas de listas infinitas, superando finalmente las peculiaridades de almacenamiento en caché y llamadas a funciones para lograr el objetivo. El recorrido destaca la flexibilidad y el poder de Nix, pero también expone algunas limitaciones de sus funciones.

Desarrollo

MeshCore: Una biblioteca ligera de redes mesh LoRa

2025-04-15
MeshCore: Una biblioteca ligera de redes mesh LoRa

MeshCore es una biblioteca C++ ligera y portátil que permite el enrutamiento de paquetes multi-hop para proyectos integrados que usan LoRa y otras radios de paquetes. Diseñada para redes resilientes y descentralizadas que funcionan sin acceso a internet, admite varios dispositivos LoRa y ofrece binarios precompilados para facilitar la grabación usando herramientas como Adafruit ESPTool. MeshCore equilibra la simplicidad y la escalabilidad, proporcionando una funcionalidad similar a Meshtastic y Reticulum, pero con un enfoque en aplicaciones integradas. Ideal para comunicación fuera de la red, respuesta a emergencias e implementaciones de IoT.

Resonate: Algoritmo de Análisis Espectral de Baja Latencia, Memoria y Costo Computacional

2025-04-15

Resonate es un algoritmo de baja latencia, baja memoria y bajo costo computacional para evaluar información espectral perceptualmente relevante de señales de audio (y otras). Se basa en un modelo de resonador que utiliza la Media Móvil Exponencialmente Ponderada (EWMA) para acumular las contribuciones de la señal alrededor de las frecuencias de resonancia. Su formulación iterativa compacta permite actualizaciones eficientes con un mínimo de operaciones aritméticas por muestra, sin necesidad de búfer. Resonate calcula en tiempo real estimaciones de contenido espectral perceptualmente relevantes; la memoria y la complejidad computacional por muestra escalan linealmente con el número de resonadores, independientemente del número de muestras de entrada. Hay implementaciones de código abierto disponibles en Python, C++ y Swift, junto con aplicaciones de demostración.

Desarrollo

LightlyTrain: Entrenamiento de modelos más rápido, sin necesidad de etiquetas

2025-04-15
LightlyTrain: Entrenamiento de modelos más rápido, sin necesidad de etiquetas

LightlyTrain lleva el preentrenamiento autosupervisado a los pipelines de visión artificial del mundo real. Aprovecha tus datos sin etiquetar para reducir drásticamente los costes de etiquetado y acelerar la implementación del modelo. Se integra fácilmente en los flujos de trabajo existentes; solo se necesitan unas pocas líneas de código para preentrenar modelos en tus datos de imagen y vídeo sin etiquetar utilizando varias arquitecturas compatibles con bibliotecas como Torchvision, Ultralytics y TIMM. Escalable a millones de imágenes, LightlyTrain mejora significativamente el rendimiento del modelo para conjuntos de datos pequeños y grandes, lo que te permite exportar modelos para ajuste fino o inferencia. No se requiere experiencia en aprendizaje autosupervisado.

Chroma: Simulación de daltonismo para mejorar la accesibilidad en juegos

2025-04-15
Chroma: Simulación de daltonismo para mejorar la accesibilidad en juegos

Chroma es una herramienta diseñada para simular varios tipos de daltonismo, ayudando a los desarrolladores de juegos y a los equipos de accesibilidad a probar las experiencias de juego para usuarios daltónicos. Simula tres tipos principales: Protanopia, Deuteranopia y Tritanopia, ofreciendo alto rendimiento, precisión y una interfaz fácil de usar. Chroma funciona sobre cualquier juego, independientemente del motor, proporcionando simulación en tiempo real, facilidad de captura de pantalla y configuraciones personalizables. Un problema conocido durante la construcción de CMake implica una biblioteca CPPWinRT obsoleta; se recomienda usar Visual Studio 2022 o instalar el paquete NuGet Microsoft.Windows.CppWinRT.

SourceHut lucha contra el raspado agresivo de LLM

2025-04-15

SourceHut, una plataforma dedicada a servir software de código abierto, está luchando activamente contra el raspado agresivo de datos por modelos de lenguaje grandes (LLMs). Argumentan que las empresas de LLM no tienen derecho a los datos de sus usuarios y han declarado explícitamente que no harán acuerdos de intercambio de datos con ninguna empresa, incluso si se les paga. SourceHut ha implementado Anubis para proteger sus servicios y ha actualizado sus términos de servicio para limitar estrictamente el raspado de datos, permitiendo solo usos como la indexación de motores de búsqueda, la investigación de acceso abierto y el archivo. Destacan que los datos pertenecen a sus usuarios y su responsabilidad es garantizar que los datos se utilicen en el mejor interés de sus usuarios, no para fines comerciales o para entrenar modelos de LLM.

Desarrollo

PgDog: Un proxy inteligente para PostgreSQL con sharding

2025-04-15
PgDog: Un proxy inteligente para PostgreSQL con sharding

PgDog es un proxy de red que intercepta toda la comunicación entre clientes y servidores de PostgreSQL, comprende SQL para inferir los destinos de las consultas y no requiere cambios en el código de la aplicación. Analiza las consultas SQL, extrae las claves de particionamiento, utiliza la función hash de particionamiento integrada de PostgreSQL y enruta las consultas al shard de base de datos correcto. El artículo detalla cómo PgDog maneja los protocolos simples y extendidos, las consultas entre shards y las operaciones COPY distribuidas, permitiendo, en última instancia, el sharding de PostgreSQL y la velocidad de ingestión de datos a escala lineal.

Desarrollo

Rust: Un arma de doble filo de eficiencia y desafíos

2025-04-15
Rust: Un arma de doble filo de eficiencia y desafíos

El autor comparte su experiencia de dos años utilizando Rust para escribir el backend de un producto B2B SaaS. Rust cuenta con un rendimiento excepcional, herramientas excelentes, seguridad de tipos y mecanismos robustos de manejo de errores. Sin embargo, el sistema de módulos y el rendimiento de compilación presentan desafíos. Si bien el verificador de préstamos es poderoso, tiene una curva de aprendizaje pronunciada. La programación asincrónica, aunque compleja, ofrece un alto rendimiento. En general, la experiencia con Rust es positiva, pero requiere una cuidadosa consideración de las compensaciones.

Desarrollo

arXivLabs: Proyectos experimentales con colaboradores de la comunidad

2025-04-15
arXivLabs: Proyectos experimentales con colaboradores de la comunidad

arXivLabs es un marco que permite a los colaboradores desarrollar y compartir nuevas funciones directamente en nuestro sitio web. Tanto las personas como las organizaciones que trabajan con arXivLabs han adoptado y aceptado nuestros valores de apertura, comunidad, excelencia y privacidad de los datos de los usuarios. arXiv está comprometido con estos valores y solo trabaja con socios que los respeten. ¿Tiene una idea para un proyecto que agregará valor a la comunidad de arXiv? Obtenga más información sobre arXivLabs.

Desarrollo

Visor de registros gigante: Navega instantáneamente en archivos de texto de 4 TB

2025-04-15
Visor de registros gigante: Navega instantáneamente en archivos de texto de 4 TB

¿Cansado de esperar para abrir archivos de registro enormes? `giant-log-viewer` carga instantáneamente archivos de texto de hasta 4 TB con una huella de memoria minúscula, usando solo ~80 MB de memoria de montón JVM. Admite codificación UTF-8 y ASCII, pero tiene limitaciones: no maneja líneas de más de 1 MB, emojis o sistemas sin GUI; actualmente solo funciona en Windows, macOS y Linux. Si bien no es tan completo en funciones como `less`, es perfecto para navegar rápidamente por registros gigantes mediante arrastrar y soltar o atajos de teclado. El proyecto es de código abierto en GitHub, y se agradecen las donaciones para ayudar al desarrollador a firmar los ejecutables.

Desarrollo archivos grandes

¿Por qué los proyectos de código abierto importantes no deberían usar GitHub?

2025-04-15

Miles de proyectos de código abierto cruciales permanecen en GitHub a pesar de la adquisición por parte de Microsoft, lo que genera serias preocupaciones sobre el control y la seguridad. El autor argumenta que la hostilidad pasada de Microsoft hacia el código abierto y sus adquisiciones como npm revelan una estrategia de control, no de apoyo genuino. El artículo insta a la migración a servidores Git autohospedados o alternativas independientes como Codeberg, NotABug y sourcehut para garantizar la independencia y la seguridad, evitando la dependencia de una sola entidad, Microsoft, para el destino del código vital.

Desarrollo

Utilidad de búsqueda ASCII en Ada: Un tutorial completo

2025-04-15

Este artículo detalla la creación de una utilidad de búsqueda ASCII de línea de comandos escrita en Ada. La utilidad imprime la tabla ASCII completa o, dado un valor hexadecimal, binario, octal o decimal, proporciona el código y el nombre del carácter ASCII correspondiente. El autor guía meticulosamente al lector a través del proceso de desarrollo, cubriendo la configuración del entorno, la implementación del código y el manejo de errores. Se proporciona un enlace a GitHub con el código fuente completo. Este artículo es adecuado para lectores con alguna experiencia en programación y ofrece información valiosa sobre la programación en Ada y el desarrollo de herramientas de línea de comandos.

Desarrollo

MCP-Shield: Protegiendo tus servidores de Protocolo de Contexto de Modelo

2025-04-15
MCP-Shield: Protegiendo tus servidores de Protocolo de Contexto de Modelo

MCP-Shield es una herramienta para escanear y detectar vulnerabilidades en tus servidores MCP (Protocolo de Contexto de Modelo). Identifica riesgos de seguridad como ataques de envenenamiento de herramientas, canales de exfiltración de datos y escaladas de origen cruzado. La herramienta admite varios métodos de configuración y opcionalmente integra la IA Claude de Anthropic para un análisis más profundo. Los patrones comunes de vulnerabilidad detectados incluyen envenenamiento de herramientas con instrucciones ocultas, shadowing de herramientas y modificación de comportamiento, canales de exfiltración de datos y violaciones de origen cruzado. Por ejemplo, puede identificar una herramienta de calculadora que secretamente intenta acceder a claves privadas SSH. MCP-Shield tiene como objetivo ayudar a los desarrolladores y auditores de seguridad a proteger sus servidores MCP y admite el escaneo antes de agregar nuevos servidores, durante las auditorías de seguridad, durante el desarrollo y después de las actualizaciones.

Rompedor de Lógica de Igualdad UUID: Fuerza bruta en AES-256-CBC

2025-04-15
Rompedor de Lógica de Igualdad UUID: Fuerza bruta en AES-256-CBC

Un kit de herramientas de descifrado lógico de campo compacto que fuerza bruta archivos AES-256-CBC encriptados con UUID usando una inicialización basada en la igualdad: xy = x / y. Esto demuestra una búsqueda determinista dentro de espacios de entropía definidos. Una demostración genera un archivo encriptado con UUID con un sufijo estructurado. El `uuid_demobreaker.py` luego escanea linealmente el espacio UUID, aprovechando la igualdad como una 'ignición' lógica, no una heurística, para guiar la búsqueda. El descifrador no adivina, filtra ni usa atajos probabilísticos; define y explora el espacio de búsqueda directamente.

Desarrollo

Ejecuta Linux en tu navegador: JSLinux lo hace posible

2025-04-15

JSLinux te permite ejecutar Linux y otros sistemas operativos directamente en tu navegador. El proyecto admite varios sistemas, incluyendo Alpine Linux basado en x86, Windows 2000 y FreeDOS, así como Buildroot y Fedora basados en riscv64. Los usuarios pueden elegir entre los modos de interfaz de consola o gráfica, proporcionando una plataforma experimental conveniente para desarrolladores y entusiastas. Esto representa un avance significativo en la emulación de sistemas basada en web.

El Auge de las Herramientas de Desarrollo de IA: ¿El Fin del Desarrollo Front-End?

2025-04-15
El Auge de las Herramientas de Desarrollo de IA: ¿El Fin del Desarrollo Front-End?

Hace dos años, surgieron predicciones de que la IA reemplazaría a los desarrolladores de software humanos. Hoy, las herramientas de IA desempeñan un papel cada vez más importante en el desarrollo de software, pero funcionan más como asistentes que como reemplazos. Si bien la IA puede generar código, todavía se necesitan desarrolladores humanos para la orientación, edición y mejora. Muchos intentos de reemplazar completamente a los desarrolladores con IA han fallado, ya que la IA tiene dificultades con tareas complejas y errores sutiles. Las herramientas de IA aumentan la eficiencia, pero no eliminan la necesidad de desarrolladores humanos. El actual mercado laboral desafiante se debe en parte a factores macroeconómicos y conceptos erróneos sobre la IA, no a que la IA realmente esté reemplazando a los desarrolvedores. El futuro probablemente implicará una colaboración más estrecha entre la IA y los desarrolladores humanos, logrando un efecto sinérgico.

Desarrollo

Ingeniería inversa de un dispositivo doméstico inteligente ESP32: control remoto e integración con Home Assistant

2025-04-15
Ingeniería inversa de un dispositivo doméstico inteligente ESP32: control remoto e integración con Home Assistant

Obsesionado con conectar todo a Home Assistant, el autor se enfrentó a un elegante purificador de aire controlable solo a través de su aplicación propietaria. Para lograr una automatización perfecta, realizó ingeniería inversa en el dispositivo basado en ESP32. El análisis de la aplicación reveló una conexión WebSocket con un servidor en la nube. Al interceptar el tráfico de red y usar un proxy UDP para reenviar al servidor en la nube, se capturaron los paquetes UDP. Estos paquetes estaban encriptados. Al desmontar el dispositivo, se reveló un microcontrolador ESP32-WROOM-32D; el firmware se extrajo usando esptool. El análisis reveló el uso de la biblioteca mbedtls para el encriptado, identificando AES-128-CBC como el algoritmo. Finalmente, se escribió un script Node.js para ejecutar un ataque man-in-the-middle (MITM), integrando el dispositivo en Home Assistant.

Desarrollo

La Ilusión de la 'Codificación por Vibración': Programas vs. Productos

2025-04-15
La Ilusión de la 'Codificación por Vibración': Programas vs. Productos

Este artículo critica la noción popular de 'codificación por vibración', argumentando que muchos en el sector tecnológico confunden programas y productos. Los programas son scripts rápidos y sencillos que resuelven tareas específicas, a menudo carentes de robustez y compatibilidad entre plataformas. Los productos, sin embargo, requieren un diseño meticuloso, considerando la codificación, la internacionalización, la concurrencia, la autenticación, la telemetría, la facturación, la marca, el soporte móvil y la implementación. Las herramientas de IA facilitan la creación rápida de programas, pero esto es fundamentalmente diferente del desarrollo de productos, una tarea mucho más compleja.

Construyendo la autenticación OTP desde cero: Desentrañando HOTP y TOTP

2025-04-15
Construyendo la autenticación OTP desde cero: Desentrañando HOTP y TOTP

Esta publicación profundiza en el funcionamiento interno de los algoritmos de contraseña de un solo uso (OTP), HOTP y TOTP. Comenzando con la experiencia del autor implementando la autenticación en el trabajo, explica los beneficios de seguridad de los OTP y detalla el proceso de generación de OTP basado en HMAC, incluidos el hash de claves, los cálculos de marca de tiempo y la generación final de código. También se proporciona una aplicación de demostración creada por el autor para que los lectores aprendan y prueben.

Desarrollo

ClipCapsule: Un gestor de portapapeles minimalista para Linux

2025-04-14
ClipCapsule: Un gestor de portapapeles minimalista para Linux

ClipCapsule es un gestor de portapapeles minimalista para Linux, construido con Go y WailsJS. Aumenta la productividad al permitirte gestionar y cambiar las entradas del portapapeles usando solo atajos de teclado, sin necesidad de ratón ni GUI. Actualmente en desarrollo, la GUI debe estar abierta para que los atajos funcionen, pero se está trabajando en un demonio en segundo plano para un funcionamiento sin problemas. Las características principales incluyen un flujo de trabajo prioritario para teclado, historial del portapapeles, reordenación dinámica y almacenamiento solo local. La instalación implica clonar el repositorio, instalar Wails y construir la aplicación, lo que puede requerir privilegios de sudo o una configuración manual de acceso al dispositivo de entrada del teclado.

Modelo de segmentación de marca de agua de código abierto de Diffusion Dynamics: la tecnología central de clear.photo

2025-04-14
Modelo de segmentación de marca de agua de código abierto de Diffusion Dynamics: la tecnología central de clear.photo

Diffusion Dynamics ha publicado el código fuente de la tecnología central detrás de su producto de eliminación de marcas de agua, clear.photo: un modelo de segmentación de marcas de agua. Este modelo de aprendizaje profundo genera máscaras que resaltan las regiones de la marca de agua, siendo excelente en la segmentación de marcas de agua basadas en logotipos. El proyecto proporciona un flujo de trabajo completo para el entrenamiento e inferencia, incluyendo la generación de conjuntos de datos, el entrenamiento de modelos y el posprocesamiento, y admite el ajuste fino en chips Apple M-series. Una característica clave es su estrategia de aumento de datos que aleatoriza los parámetros de la marca de agua, lo que lleva a un rendimiento robusto. El objetivo es proporcionar una base clara y fácilmente modificable para la construcción de herramientas más complejas.

Podman Quadlets: Orquestación de contenedores ligera

2025-04-14
Podman Quadlets: Orquestación de contenedores ligera

Kubernetes puede ser excesivo para casos de uso a menor escala o para desarrollo. Podman Quadlets ofrece una alternativa ligera, usando systemd para gestionar contenedores de forma declarativa y simplificar la implementación de aplicaciones con varios contenedores. Archivos de configuración simples (*.container, *.pod, *.image) permiten crear, iniciar y gestionar contenedores, incluyendo funciones como reinicios automáticos. La extensión Podman Quadlet de Podman Desktop mejora la usabilidad con una interfaz visual para gestionar Quadlets, incluyendo la generación, edición y visualización de registros, haciendo el manejo de contenedores más eficiente y menos complejo.

Desarrollo

Curso Intensivo de Muestreo de Montecarlo: Muestreo por Rechazo y Cambio de Coordenadas

2025-04-14

Este artículo presenta dos técnicas de muestreo cruciales en los métodos de Montecarlo: muestreo por rechazo y cambio de coordenadas. El muestreo por rechazo muestrea una región más simple y filtra las muestras en función de una probabilidad de aceptación para lograr el muestreo de una región compleja. El artículo proporciona una derivación detallada de la función de densidad de probabilidad para el muestreo por rechazo y la extiende a distribuciones no uniformes. El cambio de coordenadas utiliza el determinante jacobiano para mapear muestras de una región simple a una región compleja, permitiendo un muestreo eficiente. El artículo utiliza el disco unitario como ejemplo, mostrando cómo lograr el muestreo uniforme utilizando la transformación de coordenadas polares. Ambos métodos tienen sus ventajas y desventajas; el muestreo por rechazo es simple y fácil de entender, pero su eficiencia depende de la probabilidad de aceptación; el cambio de coordenadas es eficiente, pero requiere encontrar transformaciones de coordenadas adecuadas.

Optimización del controlador OLED ESP32: Velocidad vs. Compatibilidad con fuentes

2025-04-14
Optimización del controlador OLED ESP32: Velocidad vs. Compatibilidad con fuentes

El autor experimentó con varios controladores para una pantalla OLED SSD1306 en un ESP32, finalmente decidiéndose por un controlador obsoleto y modificado. Inicialmente, usó un controlador Espressif, pero este solo admitía una fuente única. Los intentos posteriores con LVGL y U8G2 sufrieron bajas tasas de actualización. El autor regresó al controlador obsoleto y adaptó sus llamadas a la API I2C para compatibilidad con la versión más reciente de ESP-IDF, logrando una tasa de actualización de 40 Hz. Para agregar compatibilidad con fuentes, se integró la biblioteca nvbdflib, que analiza directamente las fuentes BDF y dibuja en el búfer de cuadros, lo que resulta en una actualización de alta velocidad y capacidad de fuentes personalizadas.

Guía Pragmática de Programación Funcional: Macro sobre Micro

2025-04-14

Este ensayo argumenta en contra de una aplicación puramente a micro-nivel de los principios de la programación funcional en lenguajes imperativos. Si bien reconoce los beneficios de la programación funcional, el autor sostiene que la sustitución obsesiva de bucles for por maps y reduces sin abordar las preocupaciones arquitectónicas de alto nivel a menudo produce ganancias mínimas o incluso resultados negativos. El verdadero valor radica en la adopción de principios a macro-nivel, como la gestión de la mutación, la simplificación de la arquitectura y el fortalecimiento de los sistemas de tipos. El autor aboga por un enfoque pragmático, priorizando el diseño arquitectónico y la calidad del código sobre la estricta adhesión a los micro-estilos funcionales, sugiriendo que una cartera de soluciones 80/20 a menudo supera un único enfoque 100/100.

Desarrollo

Implementando un motor PEG simple en Janet: 10 líneas para el poder de análisis

2025-04-14

Esta publicación profundiza en la implementación de un motor de Gramática de Expresión de Análisis (PEG) en el lenguaje de programación Janet. Comenzando con conceptos fundamentales de PEG, el autor demuestra cómo construir un analizador PEG potente con un código sorprendentemente conciso. La función principal `match-peg` se explica con detalle, mostrando cómo expandir sus capacidades mediante la adición de operadores y recursividad, culminando en un analizador de fechas en formato ISO 8601. Si bien no está exento de limitaciones, esta implementación ilustra eficazmente los principios básicos y la implementación de PEGs, proporcionando información valiosa para quienes están aprendiendo sobre PEGs y diseño de compiladores.

Desarrollo Analizador

Profiler C++ de Un Solo Encabezado: utl::profiler

2025-04-14
Profiler C++ de Un Solo Encabezado: utl::profiler

utl::profiler es una biblioteca de perfilado C++ de un solo encabezado que utiliza macros simples para medir el tiempo de ejecución de segmentos de código y construir automáticamente un gráfico de llamadas. La biblioteca cuenta con características como opciones de estilo personalizables, seguridad de subprocesos y soporte para subprocesos separados. Reduce significativamente la sobrecarga utilizando intrínsecos x86. La biblioteca también admite estilo personalizado y la exportación de resultados a un archivo.

Inferencia de tipos TypeScript sin generación de código a partir de mensajes Protobuf

2025-04-14
Inferencia de tipos TypeScript sin generación de código a partir de mensajes Protobuf

protobuf-ts-types te permite definir tipos de mensajes independientes del lenguaje en formato proto e inferir tipos TypeScript directamente sin generación de código. Utiliza inteligentemente los tipos literales de plantilla de TypeScript. Si bien actualmente es una prueba de concepto y no admite servicios, RPC, campos oneof y map e importaciones, ofrece un gran potencial para simplificar la integración de Protobuf con TypeScript.

Desarrollo Inferencia de Tipos
1 2 112 113 114 116 118 119 120 214 215