This Privacy Policy explains how CJ Development ("we", "us", "our"), the operator of LumaDeck, collects, uses, and protects your personal data when you use the LumaDeck web application and related services (the "Service"). We comply with the EU General Data Protection Regulation (GDPR), Regulation (EU) 2016/679, and Spanish data protection law (LOPDGDD).
Jaime Constán Nava, trading as CJ Development (sole trader)
Tax ID (NIF): 73998352S
Address: Cantarrana 1, 46137 Playa de la Pobla de Farnals, Valencia, Spain
Email: privacy [at] lumadeck.app
Website: lumadeck.app (also reachable via lumadeck.es)
If you voluntarily join a LumaDeck newsletter or launch list, we store your email address, language, signup source, the consent wording version, consent and withdrawal timestamps, and random internal identifiers. We also keep an append-only history of consent and unsubscribe events so we can demonstrate and respect your choice. Registration for a LumaDeck account or receipt of the welcome gift does not subscribe you to marketing.
Every marketing or launch email includes a signed unsubscribe link. The link contains no email address or other direct personal data. Opening it does not unsubscribe you; the confirmation button or a standards-compliant one-click request does. After withdrawal, we keep the minimum suppression record needed to ensure that we do not send further marketing to that address unless you explicitly subscribe again.
We do not store your card details. Payments are processed directly by Stripe, a PCI-DSS Level 1 provider. We only retain a Stripe customer ID and subscription status to manage your account.
If you grant microphone access, the audio is processed locally in your browser for visual reactivity. No audio is transmitted, recorded, or stored on our servers.
LumaDeck does not set first-party cookies, does not show ads, and does not use advertising cookies. Stripe's payment library is not loaded during normal use of the visual engine. If you are signed in and choose to start a payment, Stripe.js is loaded for Checkout and Stripe may use cookies or similar technologies and receive transaction, device and connection information for fraud prevention, authentication, security, and payment-service analytics. Stripe states that these fraud signals are not sold or shared with advertisers. See Stripe's Privacy Center.
What we do use is first-party local storage, kept in your own browser:
ld_anon_id) to count returning use. It is never linked to your account or used for advertising and expires 13 months after creation without renewal. If you decline or later withdraw, no product events are sent and the id is deleted.We measure how the Service is used so we can improve it. Both analytics systems run on our own infrastructure (OVH, France), under CJ Development's direct control. No analytics data is sent to Google, Meta, or any advertising network.
Neither system records the audio from your microphone, and neither uploads your media. See 2.5 and 2.6.
The optional desktop Bridge receives rendered frames from LumaDeck through this computer's loopback interface (127.0.0.1). It never receives or uploads your original media files. When you enable NDI output, rendered pixels and the source name are published on your local network so compatible receivers can discover them. To authorize Web Pro, LumaDeck sends the Bridge a short-lived signed lease containing a pseudonymous account reference, issue and expiry times, a unique token id and the app version. The Bridge sends that lease and its version to lumadeck.app for verification; ordinary server logs may also contain IP address, user agent, result and timing. Rejected or expired leases are discarded, and operational logs follow the server-log retention described below.
NDI® is a registered trademark of Vizrt NDI AB. Learn more at ndi.video.
Google Cast is optional. Nothing is requested from Google when you load LumaDeck. Only when you choose the Google Cast option (or reopen it within 12 hours of a session, to reconnect to that display; see 2.6) does your browser download Google's Cast sender library from www.gstatic.com; Google then receives your IP address, your browser's user agent and the referring page (lumadeck.app). We set no cookies for this and, in our tests, the library stored nothing in your browser. When you connect, your Cast display loads our receiver page from lumadeck.app (our server logs see the display's IP address and user agent, kept as described in section 7) and Google's receiver library. The video travels directly from your browser to the display over your local network (WebRTC, without relay servers): it never passes through LumaDeck's or Google's servers, and no audio is sent. Your browser and your Cast device also process data under Google's own terms and privacy policy. Legal basis: performance of the service you request (Art. 6(1)(b) GDPR).
Google Cast is a trademark of Google LLC.
If you enable the in-page connection, the assistant you choose can read texts, settings, your plan (Free/Pro) and media names shown in LumaDeck; it receives no credentials, email, account id, files or GLSL source. LumaDeck sends none of this to any server: your browser hands it to the assistant you control, whose provider processes it under its own policy. Permission is not stored and is revoked when you disable it or leave the page.
We share data only with the processors and recipients necessary to deliver the Service:
Your account database and our analytics remain on our own servers. We run Supabase as self-hosted software on our OVH machine in France — we do not use Supabase's cloud, so your data is not sent to Supabase as a company. The same goes for our analytics, which run on our own infrastructure. Email recipient data and message content are sent to Resend only when an email must be delivered. (Previous versions of this policy listed Supabase as an external processor. That was inaccurate: the data has always stayed on our own server.)
We never sell your personal data, and we do not share it with advertising networks.
Your account database and our analytics are stored in the EU (France). Data may reach the United States through Stripe when you start a payment, through Resend when we deliver an email, and through Google only if you sign in with Google or use Google Cast. Resend states that its primary processing takes place in the United States and incorporates the European Commission's Standard Contractual Clauses into its DPA for transfers not covered by an adequacy decision; it also states participation in the EU-US Data Privacy Framework. Stripe and Google describe their applicable transfer safeguards in their privacy documentation.
You have the right to:
To withdraw marketing consent, use the unsubscribe link included in every launch or product email; the change is applied immediately by our system. To exercise any other right, or if the link does not work, email privacy [at] lumadeck.app. We respond within 30 days.
We use industry-standard measures: TLS 1.3 in transit, Row-Level Security on the database, signed webhooks for payment events, and secrets kept out of the code base. No system is 100% secure, but we work continuously to protect your data. Security researchers and users can report a vulnerability through our security policy.
LumaDeck is not directed at children under 16. We do not knowingly collect data from minors. If you believe a child has registered, contact us.
We may update this policy. Material changes that reduce your rights or expand how we process personal data will be announced via email or in-app notification at least 30 days before they take effect. Accuracy corrections and clarifications may apply when published.
Questions? Email privacy [at] lumadeck.app or visit our contact page.
Esta Política de privacidad explica cómo CJ Development ("nosotros"), operador de LumaDeck, recoge, usa y protege tus datos personales cuando utilizas la aplicación web LumaDeck y los servicios relacionados (el "Servicio"). Cumplimos el Reglamento General de Protección de Datos de la UE (RGPD), Reglamento (UE) 2016/679, y la legislación española de protección de datos (LOPDGDD).
Jaime Constán Nava, que opera bajo la marca CJ Development (empresario individual)
NIF: 73998352S
Domicilio: Cantarrana 1, 46137 Playa de la Pobla de Farnals, Valencia, España
Correo: privacy [at] lumadeck.app
Web: lumadeck.app (también accesible desde lumadeck.es)
Si te apuntas voluntariamente a una newsletter o lista de lanzamiento de LumaDeck, guardamos tu correo, idioma, origen del alta, la versión del texto de consentimiento, las marcas de tiempo de consentimiento y retirada, e identificadores internos aleatorios. También conservamos un historial de solo adición de los eventos de consentimiento y baja para poder demostrar y respetar tu decisión. Registrarte en LumaDeck o recibir el regalo de bienvenida no te suscribe a marketing.
Todo correo de marketing o lanzamiento incluye un enlace de baja firmado. El enlace no contiene tu correo ni otros datos personales directos. Abrirlo no te da de baja; lo hace el botón de confirmación o una petición de un clic conforme al estándar. Tras la retirada conservamos el registro mínimo de supresión necesario para no volver a enviarte marketing a esa dirección salvo que te suscribas de nuevo de forma explícita.
No almacenamos los datos de tu tarjeta. Los pagos los procesa directamente Stripe, proveedor PCI-DSS nivel 1. Solo conservamos un identificador de cliente de Stripe y el estado de la suscripción para gestionar tu cuenta.
Si concedes acceso al micrófono, el audio se procesa localmente en tu navegador para la reactividad visual. Ningún audio se transmite, graba ni almacena en nuestros servidores.
LumaDeck no instala cookies propias, no muestra anuncios y no usa cookies publicitarias. La librería de pagos de Stripe no se carga durante el uso normal del motor visual. Si has iniciado sesión y decides iniciar un pago, se carga Stripe.js para el Checkout y Stripe puede usar cookies o tecnologías similares y recibir información de la transacción, del dispositivo y de la conexión para prevención del fraude, autenticación, seguridad y analítica del servicio de pago. Stripe declara que esas señales antifraude no se venden ni se comparten con anunciantes. Consulta el Centro de privacidad de Stripe.
Lo que sí usamos es almacenamiento local propio, guardado en tu navegador:
ld_anon_id) para contar usos recurrentes. Nunca se vincula a tu cuenta ni se usa para publicidad y caduca 13 meses después de crearse sin renovarse. Si rechazas o retiras después el consentimiento, no se envían eventos de producto y se elimina el identificador.Medimos cómo se usa el Servicio para mejorarlo. Los dos sistemas de analítica corren en nuestra propia infraestructura (OVH, Francia), bajo control directo de CJ Development. Ningún dato de analítica se envía a Google, Meta ni a ninguna red publicitaria.
Ninguno de los dos sistemas graba el audio de tu micrófono ni sube tus medios. Ver 2.5 y 2.6.
El Bridge de escritorio opcional recibe los fotogramas renderizados de LumaDeck mediante la interfaz de bucle local de este ordenador (127.0.0.1). Nunca recibe ni sube tus archivos de medios originales. Cuando activas la salida NDI, los píxeles renderizados y el nombre de la fuente se publican en tu red local para que los receptores compatibles puedan descubrirlos. Para autorizar Web Pro, LumaDeck entrega al Bridge un permiso firmado y de corta duración con una referencia seudónima de cuenta, instantes de emisión y caducidad, un identificador único del token y la versión de la aplicación. El Bridge envía ese permiso y su versión a lumadeck.app para verificarlo; los logs ordinarios del servidor también pueden contener dirección IP, agente de usuario, resultado y tiempos. Los permisos rechazados o caducados se descartan y los logs operativos siguen la conservación indicada más abajo.
NDI® es una marca registrada de Vizrt NDI AB. Más información en ndi.video.
Google Cast es opcional. Al cargar LumaDeck no se pide nada a Google. Solo cuando eliges la opción Google Cast (o vuelves a abrirla en las 12 horas siguientes a una sesión, para reengancharte a esa pantalla; ver 2.6), tu navegador descarga la librería de envío de Google desde www.gstatic.com; Google recibe entonces tu dirección IP, el agente de usuario del navegador y la página de origen (lumadeck.app). No instalamos cookies para ello y, en nuestras pruebas, la librería no guardó nada en tu navegador. Al conectar, tu pantalla Cast carga nuestra página receptora desde lumadeck.app (nuestros registros ven la IP y el agente de usuario de la pantalla y se conservan según la sección 7) y la librería receptora de Google. El vídeo viaja directamente de tu navegador a la pantalla por tu red local (WebRTC, sin servidores de retransmisión): no pasa por servidores de LumaDeck ni de Google y no se envía audio. Tu navegador y tu dispositivo Cast tratan además datos conforme a las condiciones y la política de privacidad de Google. Base jurídica: prestación del servicio que solicitas (art. 6.1.b RGPD).
Google Cast es una marca de Google LLC.
Si activas la conexión en la página, el asistente que elijas puede leer textos, ajustes, tu plan (Free/Pro) y nombres de medios visibles en LumaDeck; no recibe credenciales, correo, identificador de cuenta, archivos ni código GLSL. LumaDeck no envía esos datos a ningún servidor: los entrega tu navegador al asistente que tú controlas, cuyo proveedor los trata conforme a su política. El permiso no se guarda y se revoca al desactivarlo o salir de la página.
Compartimos datos únicamente con los encargados y destinatarios necesarios para prestar el Servicio:
Tu base de datos de cuenta y nuestra analítica permanecen en nuestros propios servidores. Ejecutamos Supabase como software autogestionado en nuestra máquina de OVH en Francia — no usamos la nube de Supabase, así que tus datos no se envían a Supabase como empresa. Lo mismo ocurre con la analítica, que corre en nuestra infraestructura. Los datos del destinatario y el contenido de los mensajes se envían a Resend solo cuando hay que entregar un correo. (Versiones anteriores de esta política listaban Supabase como encargado externo. Era inexacto: los datos siempre han estado en nuestro propio servidor.)
Nunca vendemos tus datos personales ni los compartimos con redes publicitarias.
Tu base de datos de cuenta y nuestra analítica se almacenan en la UE (Francia). Los datos pueden llegar a Estados Unidos a través de Stripe cuando inicias un pago, de Resend cuando entregamos un correo y de Google solo si inicias sesión con Google o usas Google Cast. Resend declara que su procesamiento principal tiene lugar en Estados Unidos e incorpora las Cláusulas Contractuales Tipo de la Comisión Europea en su DPA para las transferencias no cubiertas por una decisión de adecuación; también declara su participación en el Marco de Privacidad de Datos UE-EE. UU. Stripe y Google describen sus garantías de transferencia en su documentación de privacidad.
Tienes derecho a:
Para retirar el consentimiento de marketing usa el enlace de baja incluido en todo correo de lanzamiento o producto; nuestro sistema aplica el cambio de inmediato. Para ejercer cualquier otro derecho, o si el enlace no funciona, escribe a privacy [at] lumadeck.app. Respondemos en un plazo de 30 días.
Aplicamos medidas estándar del sector: TLS 1.3 en tránsito, seguridad a nivel de fila en la base de datos, webhooks firmados para los eventos de pago y secretos fuera del código. Ningún sistema es 100 % seguro, pero trabajamos continuamente para proteger tus datos. Investigadores y usuarios pueden comunicar una vulnerabilidad mediante nuestra política de seguridad.
LumaDeck no está dirigido a menores de 16 años. No recogemos a sabiendas datos de menores. Si crees que un menor se ha registrado, contáctanos.
Podemos actualizar esta política. Los cambios sustanciales que reduzcan tus derechos o amplíen el tratamiento de datos personales se anunciarán por correo electrónico o aviso en la aplicación al menos 30 días antes de su entrada en vigor. Las correcciones de exactitud y aclaraciones pueden aplicarse desde su publicación.
¿Dudas? Escribe a privacy [at] lumadeck.app o visita nuestra página de contacto.