Executando verificação de segurança...
2

[Projetinho Pessoal] Cifra de Vigenère

Opa! Queria compartilhar esse projetinho pessoal que eu fez pra aprender um pouco de angular, e modéstia a parte ficou bem legal kkkk.

Na verdade eu criei esse repositório já faz algum tempo, mas na época não conhecia o tabnews e resolvi compartilhar por aqui :)

O projeto em questão é um cifrador e decifrador utilizando a Cifra de Vigenère. Nele eu disponibilizei duas formas de cifrar as mensagens: a simples, que é a forma normal usando a tabela de Vigenère comum; e a completa, que utiliza beem mais caracteres na cifra.

Além disso ele tem um artigo que explica oque é e como funciona esse cifra. Esse artigo foi gerado com chatGPT bem na época que todo esse papo de IA deu um boom.

Link do projeto: cifradevigenere.vercel.app
Link do repositório: cifra-de-vigenere

É isso, espero que gostem :)

Carregando publicação patrocinada...
2

eai mano, tudo bem?
achei muito interresante seu projeto, espero que siga aprendendo mais e mais angular e muitas outras tecnologias

no mesmo dia que vc postou aqui no tabnews, eu fui usar a sua aplicação. Como sou um usuário do mozilla firefox, percebi uma inconsistência em uma de suas funcionalidades (bem interessante por sinal essa feature) de colar o clipboard do usuário

como curioso, baixei seu projeto e tentei corrigir pra que pudesse dar meus 2 centavos a sua aplicação (novamente, que ficou muito legal), porém, minhas skills de angular são quase nulas, e não consegui destrinchar uma solução

aparentemente o firefox é mais conservador com relação as permissões de clipboard, nao permitindo que a aplicação do browser acesse-o

como ponto de partida, tentei fazer a v0 da correção, mas nao prossegui. Imaginei algo nesse sentido

colarTexto():void {

    const userAgent = window.navigator.userAgent.toLowerCase();
    if(userAgent.includes('firefox')){
      navigator.permissions.query({ name: "clipboard-read" }).then((result) => {
        if (result.state === "granted") {
          // show, isso que precisamos
        } else if (result.state === "prompt") {
          // fazer alguma coisa, não sei exatamente
        } else if (result.state === "denied") {
         // mal, precisamos alertar o usuário que ele não vai poder usar a feature
        }
        
      });
    }

   
    navigator['clipboard'].readText().then((data) => {
      this.mensagem = data;
    });
  }

Além disso, submeti uma issue lá, pra que fique registrado, também com alguns links para algumas docs e com mais informações do erro
espero ter ajudado

e novamente, muito obrigado por compatilhar com a gente seu projeto, siga sempre colhendo mais bons frutos como esse
abraço

1

yancoltro que bom que você gostou :)

E muuito obrigado pela contribuição e por ter aberto a issue. Vou dar uma olhada nos links que você mandou e corrigir esse problema assim que possível

1