Me dije a mí mismo que no empezaría ningún side project este año, peeeeero no puedo evitarlo. Eso sí, me he fijado máximo un día a la semana para hacerlo y no voy a hacerlo solo. Es una idea sencilla, pero que ataca tres puntos que me están haciendo pensar mucho últimamente:
Guardar conocimiento de forma universal, flexible y extensible.
File over DB. Me encanta el enfoque de Obsidian acerca del uso de texto plano y directorios como base de datos. Creo que no existe nada que sea más compatible y simple en pasado, presente y futuro.
Extensión vs. nueva herramienta. En lugar de crear otra herramienta más (¡de las miles que ya uso!), extender aquellas que me están funcionando bien en mi día a día.
TLDR;
La idea es simple: un scraper multimodal que procesa todo lo que le mandes y lo guarda en Obsidian.
El objetivo es poder guardar cualquier cosa digital (audio, video, podcast, web, tweet, artículos...) con un solo clic y procesarlo para extraer todo el conocimiento relacionado. Ese conocimiento extraído se almacena en formato original (fichero binario) y en texto MD. Dentro del procesamiento, se realiza una clasificación del contenido y se crean metadatos en formato texto.
Ejemplo: Guardo un audio de una reunión de 1 hora y media. Se almacenaría:
El audio original en formato binario.
La transcripción del audio original.
Una serie de palabras clave y un extracto generados con un LLM.
Una versión mejorada del contenido. Eliminación de redundancias, ideas repetidas y reestructuración de conceptos.
Tenemos algunos retos, pero en principio no pretendemos nada loco a nivel de implementación. La idea inicial es implementarlo como un complemento de Obsidian y trabajar con las APIs de OpenAI.
Creemos que al trabajar con Electron, el entorno tendrá flexibilidad suficiente como para hacer todo a nivel local y con las APIs sin necesidad de despliegue de servicios (con toda la complejidad adicional que conlleva).
Se me ocurren mil ideas y casos de uso alrededor del concepto. Pero es un side project, de momento con que cubra la necesidad de forma sencilla, perfecto.
Cuando tengamos un MVP, lo compartimos por aquí.
PD. He estado investigando y he visto cosas similares, pero nada exactamente así. Si conoces algún proyecto que ya haga esto, házmelo saber 🙏.