- Decker es una plataforma multimedia para crear y compartir documentos que reúnen sonido, imágenes, hipertexto y comportamiento mediante scripts en un solo archivo, y se puede probar directamente en el navegador
- Mantiene la sensibilidad visual de HyperCard y del MacOS clásico, mientras agrega deshacer profundo, soporte para rueda de desplazamiento y pantalla táctil, navegación moderna con teclado y edición por lotes
- Permite crear E-Zines, notas, material de presentación, juegos de aventura y trabajos como pixel art de 1 bit, y los decks terminados pueden guardarse como documentos
.htmlstandalone - Los proyectos complejos se amplían con Lil, influido por Lua y Q, y los widgets, el uso compartido por portapapeles y el formato de documentos basado en texto ayudan con la reutilización y el control de versiones
- Es una herramienta gratuita y de código abierto con licencia MIT que no incluye anuncios, telemetría, gamificación ni integración con slop-generators, y ofrece el código fuente en GitHub y distribuciones binarias en Itch.io
Creación de documentos interactivos con la estética de HyperCard
- Decker es una plataforma multimedia para crear y compartir documentos interactivos que incluyen sonido, imágenes, hipertexto y comportamiento mediante scripts
- Se puede probar de inmediato en el navegador web
- Hereda la estética visual de HyperCard y del MacOS clásico, al tiempo que conserva la simplicidad y facilidad de aprendizaje que ofrecía HyperCard
- Las mejoras de usabilidad se enfocan en conservar la sensación de las antiguas herramientas de creación basadas en tarjetas, adaptándolas al entorno moderno de entrada
-
Historial de deshacer profundo
- Soporte para rueda de desplazamiento y pantallas táctiles
- Navegación con teclado más moderna
- Edición por lotes
- Los ejemplos de lo que se puede crear son muy variados
- E-Zines
- Organización de notas
- Material de presentación
- Juegos de aventura
- Garabatos de pixel art de 1 bit
- Los decks terminados pueden guardarse como documentos
.htmlstandalone que se ejecutan por sí mismos en el navegador web, y pueden compartirse en cualquier lugar donde se pueda alojar o incrustar una página web - Decker también se ejecuta de forma nativa en MacOS, Windows, BSD y Linux
-
Lil, widgets y flujo de desarrollo basado en texto
- Para proyectos complejos, se puede usar un lenguaje de scripting llamado Lil
- Lil está influido por Lua, un lenguaje imperativo integrado en herramientas y motores de juego
- También recibe influencia de Q, un lenguaje funcional de la familia APL usado junto con bases de datos de series temporales
- Mantiene una estructura familiar para usuarios con experiencia previa en programación, e incluye aritmética implícita escalar-vector y un lenguaje de consultas integrado similar a SQL
- Para crear interfaces, se puede usar una colección integrada de widgets interactivos, y también es posible definir nuevos widgets
- Los widgets personalizados y sus definiciones pueden copiarse y pegarse mediante el portapapeles del sistema
- Los widgets personalizados también pueden compartirse en cualquier lugar donde se pueda compartir o guardar texto
- Cada deck funciona como una colección de componentes reutilizables que pueden importarse en otros proyectos
- Al compilar desde el código fuente, también se incluye Lilt, un intérprete standalone de Lil
- Lilt puede leer, escribir, manipular y ejecutar sin interfaz documentos de Decker
- Tiene menos dependencias que Decker, por lo que puede compilarse como un ejecutable APE multiplataforma
- También existe un intérprete de Lil que se ejecuta en POSIX AWK
- Los decks se guardan en un formato de texto basado en líneas, por lo que se integran bien con herramientas de control de código fuente existentes como Git y SVN
- Decker no incluye anuncios, telemetría, gamificación, integración con slop-generators ni elementos que vulneren la privacidad y autonomía del usuario
Decks de ejemplo y bibliotecas de extensión
-
Decks de ejemplo
- Decker: A Guided Tour: recorrido guiado por Decker
- 5GUIs: ejemplos de GUI
- Sokoban: A Block-Pushing Puzzle Game: juego de rompecabezas de empujar bloques
- Breakout: Three Ways: ejemplo de implementación de Breakout
- A CHIP-8 Interpreter: intérprete de CHIP-8
- Gamepad Input Demo: demo de entrada con gamepad
-
Bibliotecas
-
Documentación y materiales de aprendizaje
- The Decker reference manual: manual de referencia de Decker
- The Lil programming language: documentación del lenguaje Lil
- The Decker document format: formato de documento de Decker
- Learn Lil in 10 Minutes: material rápido para aprender Lil
- The Lil playground: playground de Lil
- Lilt: the Lil Terminal: terminal de Lil
Código fuente, distribución y comunidad
- El código fuente explorable y el rastreador de errores están en GitHub
- Decker es software gratuito y de código abierto con licencia MIT
- Las distribuciones binarias periódicas para MacOS y Windows pueden descargarse desde Itch.io
- La página de Itch incluye un foro de la comunidad para discutir sobre Decker y compartir proyectos hechos con Decker
- Los “Game Jams” temáticos de Decker se celebran cada julio y diciembre, y el próximo evento programado es Decker Fantasy Camp, July 2026
1 comentarios
Opiniones de Hacker News
¡Hermoso! Sé que aquí se busca cierta estética, pero si se avanzara apenas un poco más desde los gráficos de 1 bit hacia los gráficos de 2 bits, creo que hasta se podrían tener fotos realmente legibles.
Hay un sitio que me gusta con una estética parecida, donde todas las imágenes usan como máximo 6 colores. Eso sí, la paleta cambia según la imagen: https://solar.lowtechmagazine.com/
En el foro de la comunidad[0] hay conversaciones sobre dithering e importación de fotos a color, y los usuarios están creando proyectos[1] bastante geniales aprovechando el color.
[0]: https://itch.io/t/2668739/16-color-dithered
[1]: https://crowmorbid.itch.io/desker-deckmonth
¡No olviden probarlo ustedes mismos!
https://www.beyondloom.com/decker/tour.html
Esto me trajo recuerdos sorprendentemente dulces; ¿soy el único? Lo único que pediría es que en móvil funcione el zoom con pellizco.
Es demasiado pequeño para leer el texto, y el zoom con pellizco está bloqueado, así que no se puede mirar de cerca.
Respeto las decisiones de este proyecto, pero siento que el mayor defecto de HyperCard fue no implementar color cuando la Mac empezó a adoptar el color.
Cuando estaba en la secundaria, todas las Mac de la escuela eran equipos a color, pero HyperCard nunca llegó a tener color nativo de verdad.
HyperCard nunca recibió una actualización de color nativo, y esa era la función que todos más querían.
Creo que había una herramienta relacionada llamada SuperCard que ofrecía color; la probé, pero era torpe. No recuerdo exactamente por qué, pero al final no despegó.
La API limitada de HyperTalk también era un problema. Había un mercado de extensiones, y algunos desarrolladores dominaron ese espacio durante un tiempo. Me pregunto qué habrá sido de J5erson. Era realmente excelente.
Las extensiones normalmente se escribían en Pascal y podían agregar muchas funciones a HyperTalk, así que servían como un buen escalón para quienes querían explorar más la programación más allá de HyperCard.
Decker parece haber tomado muchas de las virtudes de HyperCard, como la simplicidad y la portabilidad. Pero me da un poco de pena que no use un lenguaje más cercano a HyperTalk. Ese lenguaje era realmente bastante bueno a su manera.
Como Decker es principalmente de 1 bit, por fuera se parece a HyperCard, pero en realidad es lo bastante distinto como para tener que aprenderlo desde cero.
Es bastante difícil de usar, hay que aprender Lil, un lenguaje nuevo y peculiar, y le faltan varias comodidades que uno esperaría al pensar en HyperCard o MacPaint.
Al final, a los artistas de HyperCard les cuesta migrar, y gracias a Infinite Mac siguen usando HyperCard en el navegador. Está muy cerca y a la vez muy lejos. Parecido, pero distinto.
En la escuela había un laserdisc de NASA lleno de información sobre el transbordador.
Estaba conectado a una Mac que ejecutaba HyperCard para la navegación y la visualización de información, y era bastante genial, aunque creo que en ese momento no lo aprecié tanto como merecía.
Se sentía como multimedia temprana, antes del boom multimedia de los 90 :-)
No entiendo por qué Apple o Microsoft no se esfuerzan más en crear herramientas de este tipo para desarrolladores casuales dentro del sistema operativo.
VB y Python están bien, pero a veces hace falta una herramienta realmente pensada para crear aplicaciones pequeñas.
Y SwiftUI es relativamente fácil, en la medida de lo posible.
Pero usar Xcode y configurar todo para la App Store todavía requiere una configuración bastante críptica y cierto entendimiento del IDE Xcode :-)
Hay muchísimo cariño por HyperCard
No lo viví en carne propia, pero parece que permitió que mucha gente creara herramientas pequeñas y útiles. En cuanto a versatilidad se parece a una hoja de cálculo, pero con una sensación de uso distinta
Me da curiosidad qué herramientas modernas les dan esa misma sensación a quienes vivieron esa época
Yo soy de una generación un poco más joven, así que me da nostalgia herramientas como Delphi/VB o Macromedia Flash. No eran perfectas, pero estimulaban la creatividad
Las herramientas actuales son mucho mejores, pero siento que en el proceso se perdió algo
HTML tomó muchas de las cosas que ofrecía HyperCard, pero las herramientas de autoría web nunca llegaron a ser igual de fáciles, y tampoco ofrecían una función de HyperCard: que la apariencia y sensación de la UI fueran consistentes. Eso podía ser una ventaja o una desventaja, pero a algunos usuarios les gustaba poder crear un flipbook agregando solo dos botones de anterior/siguiente a una página
También hubo gente que inició negocios vendiendo materiales educativos empaquetados como stacks de HyperCard
El lenguaje de programación HyperTalk no era grandioso; era el tipo de lenguaje que les gustaba a los hippies, pero el usuario promedio se perdía tanto como cuando veía C o Pascal
Siempre tuve la sensación de que Apple intentaba controlar demasiado lo que se podía hacer con eso. Era lo opuesto a lo que espero de un lenguaje de programación y las herramientas a su alrededor
Si quieres saber cómo se sentía, intenta programar algo en AppleScript
Recuerdo VB y las herramientas de Macromedia, y siento que las herramientas de hoy son más difíciles de usar
Pero lo lamentable es que creó una gran brecha entre quienes producían Flash y quienes consumían Flash. Un tinkerer motivado podía descompilar un .swf y modificarlo, pero eso estaba lejos del modelo de HyperCard, que daba herramientas de edición a todos los usuarios y convertía cada stack en una colección de piezas reutilizables
Decker puede exportar decks independientes “bloqueados” que ocultan el editor, pero reactivarlo es algo trivial. He visto casos diseñados para “desbloquearse” solos al completar un juego, y me parece una recompensa bastante genial
En muchos sentidos no encaja exactamente con HyperCard, pero en tres áreas relacionadas es un candidato especialmente fuerte. La descarga inicial es pequeña (<100MB), los tiempos de carga/ejecución son cortos y admite un flujo de desarrollo iterativo y hackeable que encaja bien con las primeras etapas de exploración para crear “algo que funcione”. GDScript es muy adecuado para esto, y con añadidos recientes como el tipado gradual también va ganando solidez con el tiempo
La forma de distribución/instalación de Godot también es muy potente. En este aspecto creo que está a años luz de cualquier otro ecosistema[0]. Descargas las plantillas de exportación para las plataformas que quieras soportar, es decir, ejecutables binarios genéricos por plataforma, y luego empaquetas y exportas el código y los recursos de cada proyecto[1]
Donde Godot actualmente queda sorprendentemente más corto frente a HyperCard o Visual Basic “clásico” es en la creación de UI mediante arrastrar y soltar. Godot tiene un sistema de UI bastante potente, pero a veces es opaco, y la experiencia actual para crear UI te obliga a estar muy consciente del árbol de nodos de la escena, en vez de simplemente arrastrar widgets desde una barra de herramientas a una ventana
Parece que esta experiencia de usuario podría mejorarse con relativa facilidad mediante un Editor Plugin, y quizá algún día haga un prototipo para meterme en ese agujero de conejo :)
No es una solución perfecta, pero hoy en día definitivamente es mi opción predeterminada para crear utilidades basadas en GUI. Algunas de ellas incluso las he terminado lo suficiente como para “lanzarlas” de verdad :D
[0] En este punto, Python en particular se cae estrepitosamente
[1] También permite exportar a WASM para la web, así que se puede hacer una distribución de dos vías: que la gente pruebe primero la utilidad en una versión web y, si le resulta lo bastante útil, descargue también el ejecutable local
Decker me encanta de verdad, y es muy divertido
Si estás buscando scripting con HyperTalk, quizá también disfrutes Wyldcard
https://github.com/defano/wyldcard
Empecé a investigar Decker después de que lo mencionaran la semana pasada en una discusión sobre alternativas a HyperCard
Me intriga mucho el empaquetado de decks. Me gusta el enfoque de Redbean: incluir Lua, SQLite, etc., todo en un solo archivo, poder abrirlo con una herramienta zip, meter el HTML y el código Lua, cambiarle el nombre y que ya quede listo para distribuir
Me pregunto si Decker está considerando algo de ese estilo para facilitar la distribución