AFFiNE: Base de conocimiento todo en uno, alternativa a Notion y Miro
Plataforma de código abierto, local-first, con lienzo edgeless, IA multimodal y colaboración en tiempo real
Vídeo tutorial en YouTube
Mira el vídeo completo sobre cómo instalar y usar AFFiNE: Base de conocimiento todo en uno, alternativa a Notion y Miro en el canal GENBYTE:
¿Qué es AFFiNE: Base de conocimiento todo en uno, alternativa a Notion y Miro?
AFFiNE es una base de conocimiento de última generación que unifica planificación, organización y creación en una sola plataforma. Diseñada como alternativa a Notion y Miro, combina documentos, pizarra infinita y bases de datos en un lienzo sin bordes donde cualquier bloque —texto enriquecido, notas adhesivas, páginas incrustadas, bases de datos multi-vista, páginas enlazadas, formas y diapositivas— puede colocarse libremente. Es de código abierto, prioriza la privacidad con arquitectura local-first, soporta sincronización y colaboración en tiempo real, y permite autoalojamiento completo. El proyecto está construido sobre Blocksuite (editor colaborativo), y-octo (implementación CRDT de alto rendimiento en Rust) y OctoBase (motor de datos local-first en Rust).
Características principales
Lienzo edgeless unificado
Documentos y pizarra se fusionan sin fronteras: texto enriquecido, notas adhesivas, páginas web incrustadas, bases de datos multi-vista, páginas enlazadas, formas y diapositivas coexisten en el mismo espacio infinito.
IA multimodal integrada (AFFiNE AI)
Asistente nativo capaz de generar informes profesionales, convertir esquemas en presentaciones, resumir artículos en mapas mentales, organizar tareas y backlogs, y prototipar aplicaciones o páginas web desde una sola instrucción.
Local-first y colaboración en tiempo real
Los datos residen siempre en el disco del usuario; la nube es opcional. Gracias a CRDT (y-octo / Yjs) se logra sincronización y edición colaborativa en clientes web y de escritorio multiplataforma.
Autoalojamiento y extensibilidad
Libertad total para gestionar, autoalojar, hacer fork y construir una instancia propia. La comunidad de plugins y bloques de terceros está en desarrollo; la base técnica es Blocksuite.
Plantillas listas para usar
Catálogo oficial con plantillas populares: tablero de visión, one-pager, planificadores de lecciones, planificadores digitales, plantilla ADHD, registro de lectura, notas Cornell, análisis SWOT, itinerarios de viaje y más.
Multiplataforma nativo
Cliente web, aplicaciones de escritorio (Electron) y móviles (Capacitor) desde una única base de código TypeScript/Rust.
Requisitos del sistema
- Node.js >=22.12.0 <23.0.0 (según package.json)
- Yarn 4.18.0 (gestor de paquetes del monorepo)
- Rust toolchain (definido en rust-toolchain.toml) para componentes nativos
- Docker y Docker Compose para despliegue autoalojado (documentación oficial)
- Sistema operativo compatible con Electron (Linux, macOS, Windows) para cliente de escritorio
Instalación con Docker Compose
Despliegue con Docker (recomendado para autoalojamiento)
El proyecto recomienda iniciar con Docker para obtener una versión completa y sin restricciones. La configuración detallada de docker-compose no está incluida en el repositorio principal; la guía oficial se encuentra en la documentación de autoalojamiento. Existe un archivo render.yaml en la raíz para despliegue en Render, y una imagen publicada en GitHub Container Registry (ghcr.io/toeverything/affine-self-hosted).
# https://docs.affine.pro/self-host-affine
# Imagen oficial: ghcr.io/toeverything/affine-self-hosted:latest
Desarrollo local (monorepo)
Clonar el repositorio, instalar dependencias con Yarn y lanzar el entorno de desarrollo. Requiere Node.js 22.x y toolchain Rust.
cd AFFiNE
yarn install
yarn dev
GitHub Codespaces
Desde la página principal del repositorio, botón "Code" → "Create codespace on master" para obtener un entorno preconfigurado con el código clonado, construido y listo para ejecutar.
Acceder al proyecto
Demo en vivo (cloud oficial)
Acceso inmediato sin instalación en https://app.affine.pro
Autoalojado
Tras desplegar con Docker (ver guía oficial), la instancia queda accesible en el puerto y dominio configurados (por defecto puerto 3010 en la documentación de referencia).
Cliente de escritorio
Descargas oficiales para Linux, macOS y Windows en https://affine.pro/download
Casos de uso
- Gestión de conocimiento personal y de equipo (wiki, notas, documentación)
- Planificación visual con pizarra infinita: mapas mentales, diagramas, tableros Kanban
- Bases de datos multi-vista (tabla, kanban, galería, lista) integradas en el lienzo
- Creación de presentaciones y diapositivas directamente desde bloques de contenido
- Escritura asistida por IA: informes, resúmenes, mapas mentales, prototipos de código
- Planificación de proyectos, backlogs, seguimiento de tareas y sprints
- Plantillas educativas: planificadores de lecciones, notas Cornell, registros de lectura
- Organización personal: planificadores digitales, tableros de visión, gestión de hábitos
Configuración avanzada
Configuración de autoalojamiento
La documentación oficial (https://docs.affine.pro/self-host-affine) cubre variables de entorno, base de datos (PostgreSQL), almacenamiento de objetos (S3 compatible), configuración de correo, OAuth, reverse proxy (Nginx/Traefik) y actualizaciones. No se incluyen valores concretos en la investigación; consultar la guía oficial.
# DATABASE_URL=postgresql://user:pass@db:5432/affine
# STORAGE_TYPE=s3
# S3_ENDPOINT=https://s3.example.com
# S3_BUCKET=affine
# S3_ACCESS_KEY=xxx
# S3_SECRET_KEY=xxx
# REDIS_URL=redis://redis:6379
# NEXTAUTH_SECRET=clave_secreta_larga
# NEXT_PUBLIC_APP_URL=https://affine.tu-dominio.com
Desarrollo y contribución al núcleo
Monorepo gestionado con Yarn workspaces. Scripts principales: dev (desarrollo), build (compilación), lint (oxlint + oxfmt), test (vitest), typecheck (tsc). Requiere firmar CLA antes de fusionar PRs. Guías en docs/CONTRIBUTING.md y docs/contributing/tutorial.md.
yarn dev # Entorno de desarrollo
yarn build # Build de producción
yarn lint # Linting estricto
yarn test # Tests unitarios e integración
yarn typecheck # Comprobación de tipos TypeScript
Ecosistema Blocksuite
AFFiNE se construye sobre Blocksuite (editor colaborativo headless). Para crear bloques personalizados, plugins o integrar el editor en otros proyectos, consultar https://blocksuite.io y el paquete @affine/component en packages/frontend/component.
npm install @affine/component
# Uso básico en proyecto React
import { AffineEditor } from '@affine/component';
function App() {
return <AffineEditor />;
}
Gestión y mantenimiento
Actualización de instancia autoalojada
Actualizar la imagen Docker a la etiqueta latest o versión específica, ejecutar migraciones de base de datos si la versión lo requiere (documentado en changelog y guía de autoalojamiento), y reiniciar contenedores. Se recomienda revisar CHANGELOG.md y la página de Release Notes en el blog oficial antes de actualizar.
docker compose down
docker compose up -d
# Verificar logs: docker compose logs -f affine
Copia de seguridad
Respaldar base de datos PostgreSQL (pg_dump), bucket de almacenamiento de objetos (S3/minIO) y volúmenes de configuración. La frecuencia y procedimiento dependen de la infraestructura elegida; no hay script oficial incluido en el repositorio.
docker exec -t postgres pg_dump -U affine affine > backup_$(date +%F).sql
# Backup de bucket S3 (usando aws cli)
aws s3 sync s3://affine-bucket ./backup/storage –endpoint-url https://s3.example.com
Monitoreo y logs
La aplicación expone logs estructurados en stdout/stderr. Compatible con recolectores estándar (Loki, ELK, Datadog). Métricas de rendimiento y errores pueden integrarse vía OpenTelemetry (dependencia @opentelemetry/core presente en resoluciones).
docker compose logs -f affine
# Filtrar errores
docker compose logs affine 2>&1 | grep -i error
Stack técnico
- TypeScript (lenguaje principal del frontend y tooling)
- Rust (componentes nativos: y-octo, OctoBase, napi-rs bindings)
- React (UI web y desktop)
- Electron (cliente de escritorio multiplataforma)
- Vite (bundler y dev server)
- Yjs / y-octo (CRDT para sincronización local-first)
- Blocksuite (motor de editor colaborativo headless)
- OctoBase (motor de datos embebido en Rust, local-first)
- Jotai (gestión de estado atómica en React)
- Vitest (testing unitario y de integración)
- Oxlint + Oxfmt (linting y formateo rápido en Rust)
- Capacitor (build móvil iOS/Android)
- PostgreSQL (base de datos relacional para backend autoalojado)
- Redis (caché y pub/sub en despliegue multi-instancia)
- S3 / MinIO (almacenamiento de objetos para assets)
Referencias oficiales
- Repositorio oficial en GitHub: https://github.com/toeverything/AFFiNE
- Sitio web y descargas: https://affine.pro
- Demo en vivo (cloud): https://app.affine.pro
- Documentación oficial: https://docs.affine.pro
- Guía de autoalojamiento (self-host): https://docs.affine.pro/self-host-affine
- Blocksuite (editor subyacente): https://blocksuite.io
- Blog y notas de versión: https://affine.pro/blog
- Comunidad en Discord: https://affine.pro/redirect/discord
- Plantillas oficiales: https://affine.pro/templates
- Imagen Docker en GitHub Container Registry: https://github.com/toeverything/AFFiNE/pkgs/container/affine-self-hosted
Apoya el canal GENBYTE
¿Te ha sido útil este contenido?
Suscríbete a YouTube
Newsletter GENBYTE
Ko-fi
Contacto: [email protected]
