Volver a actualizaciones
Nuevo releaseSep 20, 2026

macsurf v2.3

Un navegador web moderno para Classic Mac OS 9 PowerPC. CSS3 real, JavaScript ES5, HTTPS nativo. Construido con CodeWarrior sobre la API Carbon.

Compartir

MacSurf

La web moderna, en un Mac de hace 25 años.

Un navegador nativo para la era Carbon, desde Mac OS 8.6 hasta Mac OS X 10.6: CSS real, JavaScript moderno y HTTPS en el propio Mac. Sin proxy, sin una segunda máquina.

MacSurf 2.0.5 renderizando hackaday.com en un Power Macintosh G3 iMac
MacSurf 2.0.5 en un Power Mac G3 iMac, renderizando hackaday.com a ancho de escritorio completo mediante HTTPS nativo.


🆓 Estable mensual gratuito

Una compilación probada en macsurf.org, gratuita para todos, con pruebas reales en hardware detrás.

Última versión estable: MacSurf 2.3 "OPEN TABS"

⭐ Semanal, para colaboradores

Las compilaciones en desarrollo llegan a Beta-Box cada semana, antes de cada versión estable, con notas de desarrollo en el camino.

Conviértete en colaborador →

Cada proyecto permanece libre como código fuente. Compílalo tú mismo y nunca necesitarás Beta-Box. Estás pagando por la compilación y la cadencia, no por el acceso.

Apoya el desarrollo

Support on Ko-fi   Support on Patreon   Sponsor on GitHub

Sigue el proyecto

Join our Discord   Follow on Bluesky

Gracias a nuestros colaboradores:
Ko-Fi: Chris Marks, Rogue, Turuun, kilgeist
Patreon: Mack Chamberlain, Lucas, Joseph Mulvaney, Shlooom


[!NOTE] 2.3 "OPEN TABS" es la mayor versión de MacSurf desde la 2.0. Las pestañas por fin están habilitadas, con estado independiente de página, desplazamiento, historial, renderizado y JavaScript dentro de una única ventana nativa de Mac. Por debajo hay una importante reescritura del ciclo de vida y de las páginas dinámicas, una superficie de API del navegador mucho mayor, más soporte de CSS e imágenes/SVG, gestores nativos reconstruidos, redes y seguridad más sólidas, y una larga campaña de estabilidad impulsada por el hardware. MacSurf sigue siendo software honesto y en desarrollo; algunas aplicaciones modernas muy pesadas aún exponen carencias de diseño y de API. Consulta las notas de la versión 2.3 y docs/status.md para más detalles.

Por qué existe esto

La web superó al Classic Mac OS hace veinte años, y el HTTPS moderno remató la faena hacia 2016. Saca hoy un G3 o un G4 del armario y apenas podrá alcanzar un solo sitio en vivo.

MacSurf lo soluciona en la propia máquina, sin proxy de capturas ni trucos de terminal remota. Es un navegador nativo construido con las herramientas que se distribuían en la plataforma: CodeWarrior, Carbon, QuickDraw, Open Transport. Habla TLS 1.3 directamente con la web moderna a través de macTLS, una pila basada en BearSSL integrada en el binario con el paquete completo de CA de Mozilla, y ejecuta JavaScript moderno mediante macQJS, un port de QuickJS para Mac OS 9.

Hasta donde sabemos, es el primer port serio de NetSurf a Classic Mac OS, y el primer navegador para Mac OS 9 con CSS Grid nativo, propiedades personalizadas de CSS y un motor de JavaScript moderno en el dispositivo.

Sitios reales, en hardware real

Cada captura de abajo es un sitio en vivo, tomada en un Power Mac G3 con Mac OS 9.2.2 y MacSurf 2.0.5. Se conservan aquí como referencia de hardware; MacSurf 2.3 ha avanzado sustancialmente más allá del navegador que muestran estas imágenes.

hackaday.com
hackaday.com
Un sitio de noticias moderno y cargado de JavaScript a ancho de escritorio completo.
68kmla.org forum
68kmla.org
Un foro XenForo completo: sesión iniciada, ancho completo, tamaño de texto correcto.
macintoshgarden.org
macintoshgarden.org
Cargado de imágenes y totalmente estilizado, mediante HTTPS nativo.
Hacker News
news.ycombinator.com
Hacker News: inicio de sesión y portada, sin cajas fantasma.

Novedades en 2.3

Pestañas. Una única ventana nativa de Mac ahora puede alojar varias páginas de navegador independientes. Command-T abre una pestaña; Command-W cierra la pestaña actual. Las pestañas en segundo plano conservan su propio entorno de JavaScript, título, URL, contenido y estado de desplazamiento sin apoderarse de la interfaz en primer plano.

La versión también trae una importante pasada de compatibilidad con páginas dinámicas y JavaScript; mayor seguridad en la reconstrucción del DOM; mejoras en matemáticas CSS, dimensionado, Grid, variables y pintado; WebP nativo y SVG más sólido; una ventana de Descargas reconstruida; Preferencias, Marcadores e Historial mejorados; un comportamiento de HTTPS/seguridad más estricto; y un gran conjunto de correcciones de fallos y de ciclo de vida.

MacSurf 2.3 es compatible con Mac OS 8.6 hasta Mac OS X 10.6. En Macs Intel, la compilación para PowerPC se ejecuta bajo Rosetta cuando está disponible.

Notas completas de la 2.3 →

Novedades en 2.0.5

Lo más destacado es hackaday.com renderizándose a ancho de escritorio completo (mostrado arriba): tipografía correcta, tarjetas de artículos e imágenes en su sitio.

Por debajo: el texto se mide en píxeles reales del dispositivo (el font-size del autor ya no se dibuja un 25% más pequeño), una gran pasada de CSS moderno (texto justificado, guiones suaves, propiedades lógicas, atajos de alineación de cajas, auto-dimensionado de grid), un motor de JavaScript más capaz (fetch/XHR reales, cadenas de Promise que se resuelven, recorrido del DOM, document.cookie) y bloqueo de rastreadores y redes publicitarias. Notas completas de la 2.0.5 →

Novedades en 2.0

Type-ahead address bar
Barra de direcciones con autocompletado
Sugerencias basadas en el historial y los marcadores mientras escribes.
History manager
Gestor de historial
Agrupado por día, con búsqueda y borrado. Una ventana de verdad.
Bookmark manager
Gestor de marcadores
Guarda, organiza y salta directamente desde el menú.
Capturas anteriores: los mismos sitios en compilaciones previas
68kmla.org forum
68kmla.org
Macintosh Garden
macintoshgarden.org
Macintosh Repository
macintoshrepository.org
Mac Hut
machut.net
Lobsters thread about MacSurf
lobste.rs
DuckDuckGo search
DuckDuckGo
Cómo llegó hasta aquí: un par de hitos tempranos
JavaScript on Mac OS 9
v0.2: JavaScript en Mac OS 9
La primera página con JS evaluándose en vivo, en el dispositivo.
CSS Grid on Mac OS 9
CSS Grid
Diseño Grid real: spans, héroes a fila completa, ajuste automático.

Las piezas

ComponenteLenguajePropósito
browser/C (C89, CW8)Fork de NetSurf con un frontend macos9. Carbon para la interfaz, QuickDraw para el dibujado, Open Transport para las redes, macQJS para JavaScript.
macTLS
repositorio hermano
C (CW8)TLS 1.3 nativo (con respaldo a 1.2) para OS 9: HTTPS directamente desde el Mac. BearSSL por debajo, paquete completo de CA de Mozilla integrado.
macQJS
repositorio hermano
C (CW8)Un port de QuickJS para Classic Mac OS: JavaScript moderno ES2023 en PowerPC.

Qué funciona hoy

Renderizado y CSS

  • Pipeline completo de NetSurf: obtención, análisis, cascada, diseño y pintado con QuickDraw
  • Propiedades personalizadas de CSS con ámbito de selector/media, especificidad, herencia y resolución diferida de var()
  • Flexbox y CSS Grid, incluyendo un dimensionado automático de pistas más sólido, minmax(), justify-self, espacios de fila/columna y comportamiento de estiramiento
  • Matemáticas y dimensionado CSS: calc(), min(), max(), clamp(), min/max/fit-content y dimensionado relativo al viewport
  • Degradados, border-radius, box-shadow, opacidad, transformaciones, apilamiento z-index y recorte/origen de fondo mejorados
  • PNG, GIF, JPEG, BMP, TIFF y WebP nativo, incluyendo la maquinaria para WebP animado
  • SVG en línea/externo mucho más sólido: dimensionado, viewBox, modos de relación de aspecto, formas, transformaciones, relleno/trazo e imágenes ráster incrustadas
  • Fuentes web descargables, incluyendo correcciones de WOFF2/Brotli

Notas completas de la versión 2.3 →

JavaScript, macQJS (QuickJS / ES2023)

  • Características modernas del lenguaje más módulos ES
  • fetch / XHR, Headers, Request, Response, AbortController / AbortSignal y cancelación nativa
  • Promises, microtareas, temporizadores, requestAnimationFrame, localStorage persistente y sendBeacon
  • MutationObserver, ResizeObserver e IntersectionObserver
  • Recorrido/selectores del DOM más sólidos, clonación/reemplazo, propiedades reflejadas, eventos y relaciones de prototipo
  • Superficie de compatibilidad con Canvas 2D con measureText() de fuentes nativas
  • crypto.getRandomValues() y randomUUID()

Redes y seguridad

  • HTTP/1.1: transferencia por chunks, keep-alive, redirecciones, pooling, revalidación de caché y respuestas gzip
  • HTTPS mediante macTLS: TLS 1.3 con respaldo a TLS 1.2 y paquete de CA de Mozilla
  • El rechazo de certificados falla de forma segura; las peticiones HTTPS por script no pueden degradarse silenciosamente a HTTP
  • Cookies/inicios de sesión persistentes, manejo de referrer más estricto y bloqueo de rastreadores

Interfaz del navegador

  • Navegación por pestañas con estado independiente de página, historial, desplazamiento, renderizado y JavaScript
  • Barra de direcciones, atrás / adelante / recargar / inicio y sugerencias de autocompletado
  • Ventana de Descargas reconstruida con progreso, velocidad, tiempo estimado, cancelar, abrir y Mostrar en el Finder
  • Gestores nativos de Preferencias, Marcadores e Historial
  • Entrada de texto, selección, comandos de portapapeles, navegación por teclado y controles de formulario nativos

Sistemas compatibles

MacSurf 2.3 es compatible con Mac OS 8.6 hasta Mac OS X 10.6 Snow Leopard.

  • Los Macs PowerPC ejecutan MacSurf directamente.
  • Los Macs Intel pueden ejecutar la compilación para PowerPC mediante Rosetta cuando está disponible.
  • Mac OS 9 sigue siendo el objetivo principal y el entorno más probado en hardware original.
  • Memoria recomendada: 128 MB mínimo, 256 MB recomendado, 384 MB para los sitios con JavaScript más pesados.

Estabilidad y diagnóstico

Gran parte de la 2.3 es trabajo que no deberías tener que notar: mayor control de propiedad de páginas/runtime, reconstrucción del DOM más segura, callbacks tardíos protegidos, correcciones de ciclo de vida de caché/contenido, reutilización de imágenes entre reconversiones, comprobaciones de límites en TLS y aislamiento de pestañas.

MacSurf también cuenta ahora con un sistema de diagnóstico integrado mucho más profundo para correlacionar navegación, documentos, frames, peticiones de red, tareas de JavaScript, temporizadores, mutaciones, XHR/fetch, rechazos de Promise, diseño, pintado y carencias de compatibilidad. La campaña final de estrés multipestaña en Tiger completó 20/20 ciclos sin fallos ni bloqueos, seguida de pruebas en hardware con Mac OS 9.2.2.

Descarga

MacSurf 2.3 "OPEN TABS" (2026-09-19). Consulta qué cambió en las notas completas de la versión 2.3 →.

  • Descargar MacSurf →: expande con StuffIt Expander y haz doble clic. MacSurf es compatible con Mac OS 8.6 hasta Mac OS X 10.6; en Macs Intel la compilación para PowerPC se ejecuta bajo Rosetta cuando está disponible. Sin instalador.
  • ¿Ya estás en una máquina con Mac OS 9? Consíguelo desde macsurf.org en HTTP simple, ya que GitHub aún no se renderiza en el dispositivo.
  • Todas las versiones →

¿Quieres las compilaciones entre versiones? Las compilaciones semanales en desarrollo llegan a Beta-Box para los colaboradores, antes de cada versión estable.

Compilación

MacSurf se compila en Mac OS 9 con CodeWarrior 8 Pro (actualización 8.3). El código fuente está limpio para compilación cruzada con Retro68 PowerPC GCC, que usamos para comprobaciones de sintaxis rápidas desde Linux.


HTTPS nativo mediante macTLS · JavaScript mediante macQJS · construido sobre NetSurf · vídeo de introducción


Para Gary y Kaija

Categorías