Sincronização & Armazenamento
O Noust prioriza a soberania dos dados. Seus dados são seus, e você decide para onde eles vão.
Exportação & Importação
Leve seus dados com você em um formato padrão.
- Exportação: Gera um pacote binário
.npadcontendo todas as notas, seções, configurações e variáveis de ambiente. Este formato é altamente otimizado e suporta ativos binários incorporados (como imagens). Recomendamos criptografar o arquivo durante a exportação para segurança máxima. - Importação: Restaura seu espaço de trabalho a partir de um arquivo
.npadexportado anteriormente ou de um arquivo.jsonlegado. - Nota: A importação substituirá sua sessão ativa atual.
Arquitetura de Armazenamento
O Noust usa uma abordagem em camadas de alto desempenho para persistência local para garantir máxima confiabilidade e soberania de dados.
- Mecanismo Primário (IndexedDB): Nosso banco de dados local principal. Os espaços de trabalho são particionados de forma isolada (
workspace_{id}), suportando grandes conjuntos de dados e ativos binários, permitindo Criptografia Local (At-Rest / Em Repouso). - Salvamento Automático Nativo e Contínuo (Auto-Save): A persistência de dados é contínua, automática e sempre ativa em segundo plano. Todas as alterações em notas, layout do canvas, documentos do Nexus e configurações são salvas de forma assíncrona sem bloquear a thread principal da interface.
- Alternativa (LocalStorage): Usado apenas como rota de recuperação em caso de falha se o navegador bloquear o acesso ao IndexedDB. Nota: A criptografia local não está disponível no modo alternativo devido a limites de armazenamento.
Particionamento Multi-Workspaces & Sincronização Multi-Abas (Event Storage)
- Isolamento de Workspaces: Cada espaço de trabalho mantém sua própria partição de armazenamento dedicada. Alternar ou excluir um workspace carrega ou remove de forma limpa seus nós do canvas, snapshots posicionais e metadados de workspaces em nuvem sem afetar os outros workspaces.
- Alternância de Sincronização Multi-Abas: Você pode personalizar o comportamento em Configurações > Comportamento:
- Ativado (Padrão): Edições e trocas de workspace propagam em tempo real por todas as abas abertas via Event Storage / BroadcastChannel.
- Desativado: Transforma cada aba do navegador em uma sessão independente, permitindo trabalhar em espaços de trabalho diferentes lado a lado em abas separadas sem interferência mútua, com o salvamento automático garantindo a gravação de todos os dados no disco.
Sincronização em Nuvem
Nossa sincronização em nuvem é construída sobre uma Arquitetura Zero-Knowledge (Conhecimento Zero). Isso significa que nós fornecemos o armazenamento, mas nunca vemos seus dados.
Como Funciona
- Empacotamento Binário: Os dados e ativos do seu espaço de trabalho são compactados em um envelope binário
.npadpara minimizar a pegada de dados e eliminar o processamento desnecessário do Base64. - Criptografia Local: Os dados são criptografados no seu navegador usando AES-256-GCM.
- Blob Criptografado: Apenas o "blob" criptografado é enviado para os nossos servidores.
- Retenção de Chaves: As chaves (sua senha e o salt opcional) nunca saem do seu dispositivo.
- Dessincronizar: Colaboradores ou proprietários podem dessincronizar um workspace compartilhado a qualquer momento. Isso corta o link na nuvem, preservando uma cópia privada e totalmente editável no seu espaço de trabalho local.
Ações do Workspace na Nuvem
- Sync (anteriormente "Save"): Envia e sincroniza as alterações locais do seu workspace na nuvem. Ao criar um novo workspace pela primeira vez, esta ação é rotulada como Send (ou Sync).
- Load: Abre e carrega um workspace da sua lista na nuvem para a sua sessão ativa.
- Sync (anteriormente "Auto-Sync"): Alterna a sincronização automática em segundo plano para o workspace ativo.
Detecção de Atualizações e Indicadores Visuais
O Noust verifica continuamente o estado de atualização dos seus workspaces nos seus dispositivos. As verificações ocorrem tanto manualmente (ao clicar em Refresh na lista de workspaces ou ao abrir o painel de Sincronização em Nuvem) quanto automaticamente (ex.: ao reconectar à internet, ao retornar do modo de suspensão do sistema ou ao voltar após um período prolongado de inatividade).
Quando uma versão mais recente do seu workspace é detectada na nuvem, o Noust alerta você em 3 locais distintos da interface:
- Ícone no Cabeçalho Global: O ícone de Sync na barra de ferramentas principal exibe um indicador de notificação.
- Badge na Lista de Workspaces: Um ponto indicador vazado é exibido ao lado do workspace em Meus Workspaces na Nuvem ou Compartilhados comigo.
- Aviso no Formulário de Nuvem: O botão de ação "Updates Available" é exibido dentro do painel de gerenciamento do workspace ativo.
Fusão Inteligente (3-Way Line Merge) e Proteção de Conflitos
Ao puxar atualizações de outro dispositivo, o Noust realiza uma fusão automática linha por linha em 3 vias (3-way merge) abrangendo notas, seções, objetivos e metadados de topologia:
- Prevenção de Conflitos: Para evitar que você sobrescreva acidentalmente alterações feitas em outro dispositivo, o Noust bloqueia operações manuais de Sync sempre que atualizações remotas ou conflitos não resolvidos forem detectados. Você deve puxar e resolver as alterações remotas antes de enviar dados locais.
- Resolução Granular de Conflitos: Se houver colisões de edições na mesma linha exata, o Noust abre um modal interativo de resolução de conflitos, permitindo selecionar linha por linha qual versão (Local vs. Nuvem) preservar.
Auto-Update (Plano de Assinatura Pago)
Usuários em planos pagos têm acesso ao Auto-Update, que automatiza a sincronização em segundo plano sem interromper seu fluxo de trabalho:
- Download e Merge Automatizados: Quando uma atualização remota é detectada e não existem conflitos estruturais, o Noust baixa e realiza o merge da versão remota automaticamente em segundo plano.
- Segurança e Verificação de Senha: O Auto-Update funciona perfeitamente desde que o Sync esteja ativo e a sua sessão local esteja descriptografada com a mesma senha de segurança do workspace remoto.
- Proteção contra Interrupção na Digitação: Para evitar colisões ou saltos do cursor enquanto você escreve, o Auto-Update aguarda um breve período de inatividade na digitação do editor antes de aplicar o merge silencioso.
- Notificações Discretas: Uma notificação sutil confirma quando uma atualização automática em segundo plano foi concluída com sucesso.
- Bloqueio de Segurança em Conflitos: Se ocorrer um conflito estrutural durante uma atualização automática, o Noust interrompe o merge automático para proteger seus dados, sinaliza o workspace com um aviso de atualização e solicita que você resolva o conflito manualmente.
Indicadores Visuais
O ícone de Nuvem aparece no cabeçalho global para indicar que o workspace ativo está sincronizado com a nuvem. Quando o ícone de nuvem está preenchido, isso indica que o Auto-Update está ativado para este workspace.
Requisitos de Descriptografia
Para restaurar seus dados a partir de outro dispositivo, você deve fornecer:
- Sua Senha de Criptografia.
- Seu Salt Personalizado (se utilizado).
Importante
Não existe nenhum mecanismo para recuperar seus dados se você perder sua senha ou salt. Nós não os armazenamos e não podemos redefini-los para você.
Colaboração & Workspaces Compartilhados
O Noust permite que você compartilhe workspaces específicos na nuvem com outros usuários.
- Compartilhamento Seletivo: Compartilhe apenas os workspaces que você escolher.
- Proteção contra Descoberta (Baseado em Usernames): O compartilhamento é intencionalmente restrito apenas a usernames exatos. Evitamos estritamente e-mails pesquisáveis ou listas públicas para garantir que sua presença no Noust nunca seja detectada ou "enumerada" por terceiros.
- Papéis de Colaboradores: Cada colaborador pode receber um de dois papéis:
- Leitor (Reader): Pode sincronizar e visualizar o workspace compartilhado em modo somente leitura.
- Editor: Pode sincronizar o workspace e enviar alterações locais para revisão do proprietário.
- Gerenciar Papéis e Revogar Acesso: Como proprietário do workspace, você pode alterar o papel de um colaborador (Leitor/Editor) ou revogar o acesso a qualquer momento. Ao promover para Editor, a confirmação é autenticada através do modal de credenciais.
Atualizações de Colaboradores & Revisão do Proprietário
Quando um colaborador Editor envia alterações, o proprietário do workspace recebe uma notificação de atualização pendente no painel de Colaboradores.
- Painel de Atualizações Pendentes: O proprietário visualiza quantas atualizações estão pendentes, quem as enviou, o tamanho e a data/hora.
- Revisão Provisória: Ao clicar em Revisar, as alterações do colaborador são carregadas no workspace para inspeção visual. O proprietário visualiza o resultado mesclado diretamente no editor antes de tomar uma decisão.
- Aceitar ou Descartar: Após revisar, o proprietário pode:
- Aceitar Tudo: Aplica e salva as alterações mescladas no workspace na nuvem.
- Descartar Tudo: Restaura instantaneamente o workspace ao seu estado original, sem aplicar alterações. Nenhum dado local é perdido.
- Excluir sem Revisar: O proprietário também pode excluir uma atualização pendente diretamente pelo painel sem abri-la.
Tratamento de Conflitos
Se tanto o proprietário quanto o colaborador alterarem a mesma nota ou linha, o Noust realiza automaticamente um 3-way merge. Quando um conflito não puder ser resolvido automaticamente, marcadores de conflito são exibidos diretamente no texto para que o proprietário tome uma decisão informada antes de aceitar ou descartar.
Criptografia de Ponta a Ponta (Zero-Knowledge Sharing)
Os workspaces compartilhados mantêm a mesma garantia de Zero-Knowledge dos workspaces pessoais. A senha do workspace é entregue aos colaboradores através de um Envelope E2EE criptografado — selado com a chave pública E2EE do colaborador.
- Autorização do Colaborador & Exigência de Senha: Ao autorizar um colaborador, o proprietário deve informar a mesma senha de criptografia (e salt) utilizada no workspace. O navegador criptografa essas credenciais no Envelope E2EE usando a chave pública do destinatário.
- Entrega por Envelope: O servidor nunca tem acesso à senha do workspace, às chaves privadas ou ao conteúdo legível.
- Validação de Credenciais (
keyVerifier): Quando um Editor envia um update, o servidor valida uma hash SHA-256 (keyVerifier) derivada da senha e salt do workspace. Isso garante que o colaborador está usando exatamente a mesma senha e salt originais definidos pelo proprietário antes de aceitar o envio. - Atualização de Chaves dos Colaboradores (
Update Keys): Se o proprietário trocar a senha ou salt de um cloud workspace que já havia sido compartilhado anteriormente, os colaboradores perderão o acesso, pois seus envelopes foram criptografados com as credenciais antigas. O proprietário pode restaurar o acesso a qualquer momento clicando no botão Update Collaborator Keys (o ícone de chave no card de Colaboradores ou marcando a opção "Update collaborator keys on sync" no painel de Sincronização), re-criptografando os envelopes e atualizando okeyVerifierpara todos os colaboradores de uma só vez. - Requisito de Desbloqueio do Cofre: Os colaboradores precisam estar com o Cofre E2EE desbloqueado (em Perfil > Segurança) para descriptografar envelopes e acessar workspaces compartilhados.
Transparência Criptográfica
- Workspaces Privados e Modo Leitor (Reader): Operam em Zero-Knowledge absoluto — nenhuma credencial, hash ou pista criptográfica é enviada ou armazenada no servidor.
- Validação Exclusiva para Editores: Apenas quando o proprietário concede permissão de Editor a um colaborador, uma hash unidirecional SHA-256 (
senha + salt) é registrada temporariamente comokeyVerifier. Ela serve exclusivamente para que o servidor consiga validar se os colaboradores com papel de Editor estão submetendo alterações com as credenciais de criptografia corretas (senha e salt), sem que o servidor jamais conheça sua senha real. - Atualização Automática no Sync: Sempre que o proprietário sincroniza (
Sync/ update) um workspace na nuvem, okeyVerifieré atualizado automaticamente no servidor apenas se existir ao menos um colaborador com papel de Editor no respectivo workspace. - Ciclo de Vida Estrito: Essa hash fica associada ao workspace na nuvem apenas enquanto houver editores ativos; ao revogar a permissão de editor ou remover um colaborador, o
keyVerifieré imediatamente e permanentemente eliminado do servidor caso não reste nenhum outro editor ativo no workspace (ou se o workspace for excluído da nuvem).
Auditoria de Segurança (Plano Avançado)
Os usuários do Plano Avançado ganham acesso a uma trilha de auditoria transparente e focada na privacidade.
- Logs de Acesso: Monitore seus próprios eventos críticos (Logins, Envio de Dados/Push, Exclusões).
- Proteção de Privacidade: Os logs identificam a família do dispositivo/sistema operacional e o tipo de ação, mas nunca expõem seu endereço IP público na interface voltada ao usuário.
- Verificação: Use esses logs para monitorar acessos não autorizados em seus dispositivos.
Gerenciamento & Exclusão de Conta
O Noust oferece um processo seguro de fim de vida para seus dados.
- Exclusão Lógica (Soft Delete): Quando você solicita a exclusão da conta, o acesso é suspenso imediatamente, mas os dados são retidos por um período de carência de 30 dias para recuperação antes da exclusão irreversível.
- Mecanismo de Confirmação: Para evitar perdas acidentais, a exclusão requer uma confirmação deliberada digitando seu username correspondente (
{username}_delete). - Soberania dos Dados: Após 30 dias, sua identidade é excluída, embora alguns metadados possam ser retidos por até 6 meses em logs técnicos criptografados para conformidade legal (LGPD/GDPR) antes da exclusão definitiva e absoluta.