← Todos los artículos

Sesiones de código del viernes por la noche: una alternativa perezosa a CleanShot X

En esta página

Llevo usando CleanShot algo más de cinco años. No tengo quejas, salvo que va unido a mi suscripción a SetApp, algo que me parecía bien pagar hasta que algunas de mis apps favoritas se fueron del servicio. Ahora básicamente solo uso Lungo, TablePlus y CleanShot X, y de las dos primeras ya tengo licencia de pago único.

Se me ha ocurrido una “alternativa” que es más bien un “apaño” para cubrir los flujos para los que usaba sobre todo CleanShot.

Esto implica que:

  1. Uso macOS
  2. Uso CleanShot X sobre todo para hacer capturas de pantalla
  3. No uso ninguna de sus herramientas de edición
  4. Solo subo a la nube si no voy a arrastrar la captura a un mensaje de Slack.

La parte de la nube

Guardar y servir cosas en la nube es un problema resuelto desde antes incluso de que un sitio famoso para comprar libros se pusiera a vender almacenamiento en la nube. Para esto no voy a usar la librería, sino Cloudflare R2, que es una gran solución de almacenamiento y usa la API S3 de la librería.

Quería también buenas vistas previas, así que uso Cloudflare Workers para renderizar una página HTML con una vista previa del archivo y un enlace de descarga.

Hay una utilidad integrada muy práctica, HTMLRewriter, que uso para inyectar atributos en una plantilla HTML ya hecha. Así puedo meter con facilidad elementos dinámicos, como el enlace de descarga y la imagen de vista previa, en la plantilla.

No uso ninguna librería sofisticada para controlar las vistas previas, solo lo que ya trae el navegador, que funciona bien:

  • Imágenes, una etiqueta <img> de toda la vida
  • Vídeos, una etiqueta <video>
  • Audio, una etiqueta <audio>
  • PDF, una etiqueta <embed>

Básicamente, cuando llamas al worker en https://cloudwrap.example.com/your-file.jpg, sirve una página HTML con una vista previa de la imagen y un enlace de descarga.

He publicado el proyecto como código abierto y lo tienes aquí.

La parte de las capturas

Llevo un tiempo usando Atajos de Siri para automatizar todo tipo de cosas en el iPhone. También está en el Mac, pero nunca lo había usado mucho.

Decidí usarlo para este proyecto. La razón principal es que me deja añadir una acción rápida al Finder y a la hoja de compartir.

Captura de pantalla de la acción rápida

Monté este atajo, que:

  1. Acepta una entrada desde la hoja de compartir o el menú de acciones rápidas

  2. Sube el archivo al worker de arriba

  3. Copia la URL al portapapeles

  4. Muestra una hoja de compartir que puedes descartar si solo vas a pegar la URL

Qué tal se siente

No es tan fluido como CleanShot X, pero no está mal. Hago una captura, clic derecho en el archivo, acción rápida y pego la URL. Son unos pasos más de los que me gustaría, pero no está mal.

Dado lo poco que usaba la subida a la nube de CleanShot X, estoy contento con esta solución. Es gratis, es rápida y es mía (más o menos).

El futuro

Fue un proyecto divertido de viernes por la noche y estoy contento con el resultado. Probablemente lo pula un poco según haga falta, pero por ahora hace lo que necesito: subir capturas a la nube y darme una URL para compartir.

He añadido un botón de Deploy to Workers al repositorio de GitHub, así que puedes desplegarlo en tu propia cuenta de Cloudflare si quieres usarlo.