braiNOTES es una aplicación de código abierto diseñada para tomar notas manuscritas directamente en el navegador web, eliminando la necesidad de cuentas de usuario o servidores externos. Su objetivo principal es facilitar la toma de apuntes durante conferencias, permitiendo que las diapositivas se abran junto a las notas o se conviertan en las páginas sobre las cuales escribir. La herramienta ofrece una experiencia similar a aplicaciones como OneNote o GoodNotes, pero con la ventaja de la privacidad total, ya que todos los datos permanecen localmente en el dispositivo del usuario.
La aplicación incluye una variedad de herramientas de escritura, como bolígrafos, plumas de tinta, marcadores, lápices y resaltadores, que soportan la presión del trazo. Los usuarios pueden elegir entre cuadernos con papel en blanco, líneas, cuadrícula o puntos, así como pizarras sin bordes. Además, permite escribir sobre archivos PDF, leerlos en el lado y recortar partes específicas para insertarlas en las notas. La interfaz incluye funciones como dibujar imágenes, formas, texto, un lazo, un borrador y un puntero láser.
En cuanto a la gestión de archivos, braiNOTES permite exportar a PDF con las páginas originales y tinta vectorial, o a PNG. Los archivos .brainotes, que son archivos ZIP que contienen el cuaderno, un archivo JSON por página y los PDFs e imágenes, sirven para respaldar o compartir el cuaderno. La aplicación guarda automáticamente los cambios en IndexedDB y funciona en modo offline una vez abierta. Técnicamente, el proyecto utiliza Svelte 5 y SvelteKit para el framework, pdf.js para la lectura de PDFs, pdf-lib para la escritura en PDFs y TypeScript como lenguaje de programación. La arquitectura de dibujo optimiza el rendimiento mediante tiles de canvas en caché, mientras que la lectura de PDFs se realiza en un worker para no bloquear la interfaz principal.
