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

[ Pitch ] Versão final do meu projeto: Site de anotações simples no Formato Markdown

Introdução:

Há alguns dias, eu apresentei um projeto neste post aqui: [Pitch] site de anotações simples no formato markdown, onde eu expliquei a motivação, dentre outras coisas que eu não irei repetir aqui. Então, se tiver interesse em saber mais sobre, recomendo da uma olhada neste post.

Atualização final do projeto:

O projeto ainda pode ser melhorado sim, com toda certeza, mas eu atingi a meta que eu queria, criar um site de anotações simples no formato markdown

Dito isso, decidi dá um ponto final no projetinho e iniciar outros, ou melhor, tirar um tempo para estudar React 19 e criar algo mais complexo, e quem sabe um PHP.

O que mudou no projeto da versão antiga para a atual?

Eu praticamente refiz tudo do zero onde eu mudei um pouco a função que criava novas linhas, o desgin, dentre outras coisas. Eu irei detalhar tudo mais abaixo.

Design:

Começando pelo o design, eu mudei pouca coisa. Deixei ele o mais mínimo possível, apenas com uma pequena paleta de cor. As mudanças mais notáveis são no modo escuro, onde adicionei uma paleta semelhante a do github no background-color e um verde para diversificar mais.

Outras mudanças são aplicadas, ou melhor, controladas pelo o Javascript, onde ao adicionar a formatação de títulos no formato .md, ele ficará com um cor azul, semelhante a como acontece no tabnews, que me serviu de inspiração em diversos pontos.

Outra formatação que tem estilo específico é nas citações, onde possui uma coloração esverdiada, também como no tabnews.

O bloco de código, possui um backgroud diferente, para ficar mais explícito sua área e todo o código dentro possui a cor laranja, também como no tabnews.

Dentro do bloco de código eu adicionei JetBrains mono como fonte, mas se você não estiver instalada, será as padrão do CSS e como última possibilidade, monospace.

Removido o botão de criação de tabela, estava gerando muitos bugs e quebrando a aplicação inteira, então terá que adicionar manualmente.

Estrutura do Projeto:

Eu vou explicar sobre a estrutura do script do projeto, o meu pensamento sobre cada funcionalidade e o que removi e adicionei.

Prettier:

Eu adicionei Prettier para formatar o código, ou seja, não utilizei o que já vem integrado no VScode. E isso me lembra que eu esqueci de usar npx prettier . --write no último commit...

Babel.js:

Adicionei babel.js por questões de compatibilidade em navegadores, apesar de eu não entender muito bem como configurar o babel por completo, foi uma experiência boa em fazer do zero, e não pré-configurado por um framework.

Mudança na criação de linhas:

Antigamente, ao clicar no enter no último caractere, criava uma <div contentEditable="true"> e algumas classes para estilos.

Eu mudei um pouco isso. Agora eu adiciono uma <div class="line"> para agrupar a linha inteira e dentro desta div existe um <span> que agrupa todas as palavras e dentro desde span, existem vários spans que embrulham cada palavra,

Resumido, a organização do conteúdo mudou em código, mas visualmente ainda é o mesmo. Agora todas as palavras são embrulhas em spans, pois isso me permite maior controle sobre partes específicas do conteúdo.

Sobre o enter, ainda permanece igual, porém um pouco mais aprimorando na questão de controle em código.

Botões de formatações e bloco de código:

Essas funções já existiam, mas foram alteradas um pouco.

Antes, no bloco de código, existia a possibilidade de bugar e não criar uma nova linha ao pressionar enter no caractere especial crase que não é possível representar aqui por causa do formatação de line_code.

Esse bug agora foi removido e depois de vários testes, não notei mais sua presença.

Os botões italic e bold foram alterados em código, mas funcionam da mesma forma que antes. O motivo de ser alterado em código, foi a necessidade de adaptar a nova estrutura de criação de linhas.

Ainda é possível utilizar atalhos no teclado para criar formatações italic e bold de maneira rápida, apertando: crtl + i e crtl + b, para itálico e bold respectivamente.

Conclusão:

Basicamente, é isso pessoal! Aprendi muito sobre o projeto e descobri coisas que ainda devo aprimorar. Futuramente eu pretendo criar um projeto semelhante do zero, mas totalmente inovador, mais mais funcionalidades e etc...

Espeor que tenham gostado. O link para o repositório: notes, os scripts estão um pouco bagunçados... peço desculpas desde já! Clean-code é algo que estou aprendendo profundamente no momento.

O link para o projeto está aqui: notes-project

Uma boa noite pessoal!

Carregando publicação patrocinada...
0
1

Não adicionei imagens, pois não há muito que mostrar. Cogitei em printar alguns pontos específicos, mas logo lembrei que as URL das imagens alteram rapidamente, então deixei assim mesmo.