Noxtr Hoja de Especificaciones

Un cliente Nostr web integrado en el framework JUX. Resumen de funcionalidades, soporte de NIPs y comparativa con otros clientes.

Cliente Web · Arquitectura Abierta · Self-hosted
Volver a Noxtr · JUX FrameWork · Versión en inglés

¿Qué es Noxtr?

Noxtr es un cliente Nostr web integrado en el framework PHP JUX. Funciona como un módulo dentro de un sitio web auto-alojado, combinando el acceso al protocolo Nostr con funcionalidades del servidor como cuentas de usuario, hosting de direcciones Lightning y verificación de identidad NIP-05.

Está diseñado como una aplicación de página única sin frameworks JavaScript externos — vanilla JS con un helper DOM ligero (wquery).

Características Clave

Auto-alojado

Se ejecuta en tu propio servidor (Apache/nginx, PHP, MySQL/SQLite). Tú controlas tus datos, tu lista de relays y tus endpoints Lightning.

Cero Dependencias

Sin React, sin Vue, sin npm, sin paso de compilación. JavaScript vanilla puro en un solo archivo. Criptografía vía noble-secp256k1 y noble-ciphers.

Identidad Integrada

La verificación NIP-05 y las direcciones Lightning LNURL-pay se auto-configuran desde las cuentas de usuario del servidor.

Multi-autenticación

Soporta extensiones de navegador NIP-07, clave privada nsec, NIP-46 Nostr Connect (firma remota con QR) y modo sólo lectura con npub.

Soporte de NIPs

Posibilidades de Implementación de Nostr (NIPs) soportadas por Noxtr:

NIP-01Protocolo básico
NIP-02Lista de contactos
NIP-04DMs cifrados
NIP-05Identidad DNS
NIP-07Firmante del navegador
NIP-09Eliminación de eventos
NIP-10Hilos de respuesta
NIP-23Contenido largo
NIP-19Entidades Bech32
NIP-25Reacciones
NIP-28Canales públicos
NIP-44Cifrado versionado
NIP-46Nostr Connect
NIP-50Búsqueda
NIP-56Reportes
NIP-57Zaps Lightning
NIP-65Metadatos de relays

Tipos de Evento (Kinds)

KindDescripciónUso
0Metadatos de perfilNombre, avatar, banner, bio, nip05, lud16
1Nota de textoContenido principal del feed, hashtags, menciones
3Lista de contactosSeguir/dejar de seguir, petnames, hints de relay
4DM cifradoAES-CBC con IV, descifrado vía NIP-07 o privkey
5EliminaciónBorrar notas propias y mensajes de canal propios (kind 42)
6RepostCompartir notas
7ReacciónLike/unlike en notas
40Crear canalCanal de chat público NIP-28
41Metadatos de canalNombre, descripción, imagen del canal
42Mensaje de canalMensajes en canales públicos (eliminación propia vía kind 5)
1984ReporteReportes de spam NIP-56
30023Artículo (NIP-23)Contenido largo: mezclado en el feed con badge “Read”, vista completa con Markdown, composición de artículos
9734Solicitud de ZapMetadatos de pago Lightning
9735Recibo de ZapConfirmación de pago desde el servidor
24133Nostr ConnectFirma remota NIP-46

Resumen de Funcionalidades

Modos de Feed

Global, Siguiendo, Seguidores, Temas (suscripciones por hashtag) y Tendencias (ranking por engagement).

Mensajes Directos

DMs cifrados con NIP-04 con hilos de conversación, caché en base de datos local y descifrado vía extensión.

Canales Públicos (NIP-28)

Crear, unirse y chatear en canales públicos. Metadatos de canal, fijar canales, enlaces de invitación y configuración exclusiva del creador. Eliminación de mensajes propios (NIP-09).

Artículos (NIP-23)

Contenido largo (kind 30023) mezclado en el feed con badge “Read” y deduplicación. Vista completa con renderizado Markdown. Compositor con campos de título, resumen, imagen y etiquetas.

Hilos (NIP-10)

Vista completa de hilos con marcadores root/reply, conteo de respuestas, orden cronológico y enlaces permanentes.

Zaps Lightning

Zaps NIP-57 con transferencias internas entre usuarios registrados y facturas externas vía BTCPay y LNURL-pay.

Integración con BTCPay Server

Infraestructura Lightning auto-alojada vía BTCPay Server. El endpoint LNURL-pay sirve facturas, crea solicitudes de pago BOLT11 y procesa recibos de zap (kind 9735) con firmas Schnorr del servidor. Los sats recibidos se acumulan en el balance del usuario para transferencias internas o retiro.

Búsqueda

Búsqueda de texto NIP-50 con fallback multi-relay. Búsqueda de perfiles con @usuario. Detección de entidades npub/note/nevent.

Suscripción a Temas

Suscríbete a hashtags (#bitcoin, #nostr, etc.) y filtra tu feed. Temas sugeridos, activación masiva, filtro de tendencias.

Favoritos y Silenciados

Guarda notas como favoritos localmente. Silencia usuarios con reporte de spam NIP-56 opcional. Gestión de silenciados en ajustes.

Manejo de Media

Imágenes embebidas (carga diferida), reproductores de vídeo, embeds de YouTube/Vimeo. Detección de dominios caídos con reintento a las 24h.

Gestión de Perfil

Editar nombre, bio, avatar, banner. NIP-05 y dirección Lightning auto-configurados desde la cuenta del servidor.

Gestión de Relays

Añadir/eliminar/activar relays. Estado de conexión en tiempo real. Reconexión con backoff exponencial. Rebalanceo de suscripciones.

Tarjetas de Perfil AR

Parsea y renderiza broadcasts de perfiles de redes mesh AR (ar_profile, ar_collaboration) como tarjetas visuales con avatar, ubicación y acciones sociales.

Comparativa de Clientes

Una comparación imparcial de Noxtr frente a clientes Nostr establecidos. Cada cliente tiene fortalezas diferentes — esta tabla pretende ser factual, no promocional.

Soportado ~ Parcial No soportado n/a No aplica

General

Noxtr Damus Amethyst Primal Snort Iris Coracle Nostur
Plataforma Web iOS Android Web/iOS/Android Web Web/Multi Web (PWA) iOS/macOS
Código abierto
Auto-alojado
Sin paso de compilación n/a n/a n/a
NIPs documentados 17 ~15 60+ ~20 42 ~15 ~15 ~15

Soporte de NIPs Principales

NIP Noxtr Damus Amethyst Primal Snort Iris Coracle Nostur
01Protocolo básico
02Lista de contactos
04DMs cifrados (legacy) lectura
05Identidad DNS
07Firmante del navegador n/a n/a n/a
09Eliminación de eventos ~
10Hilos de respuesta
19Entidades Bech32
23Contenido largo (artículos)
25Reacciones
28Canales públicos
44Cifrado versionado ~
46Nostr Connect ~
50Búsqueda ~
57Zaps Lightning
65Metadatos de relays ~

Funcionalidades

Funcionalidad Noxtr Damus Amethyst Primal Snort Iris Coracle Nostur
DMs modernos (NIP-17/44) ~
Wallet integrado balance Coinos Cashu
Búsqueda de perfiles (@user)
Canales públicos (NIP-28)
Feed de tendencias
Suscripción a temas/hashtags ~ ~ ~
Hosting NIP-05 premium pago
Hosting dirección Lightning pago
Múltiples cuentas logout/login
Contenido largo (NIP-23)
Comunidades (NIP-72)
Subida de archivos (NIP-96)
Integración BTCPay Server
Renderizado de perfiles AR único
Nota de imparcialidad: Amethyst lidera el ecosistema en número de NIPs (60+). Primal ofrece la mejor experiencia de onboarding e infraestructura de búsqueda. Coracle destaca en gestión de relays. Iris fue pionero en cifrado de DMs con double ratchet. Nostur tiene la mejor integración con el ecosistema Apple. El diferenciador de Noxtr es la infraestructura de identidad auto-alojada (NIP-05 + dirección Lightning) y la arquitectura sin dependencias — no la amplitud de NIPs.

Limitaciones Conocidas (no por mucho tiempo)

Áreas donde Noxtr está por detrás de otros clientes:

Fortalezas Distintivas

Arquitectura Técnica

ComponenteTecnología
FrontendJavaScript vanilla (IIFE único), helper DOM wquery
BackendPHP (módulo del framework JUX)
Base de datosMySQL o SQLite (SQL dual-compatible)
Servidor webApache (mod_rewrite) o nginx
Criptografíanoble-secp256k1 (BIP-340 Schnorr), noble-ciphers (XChaCha20-Poly1305), Web Crypto API (AES-CBC, HKDF)
LightningBTCPay Server (LNURL-pay, facturas BOLT11)
AlmacenamientoBD del servidor (contactos, temas, favoritos, DMs, relays, silenciados, canales) + localStorage/IndexedDB (claves, estado UI)