Projetos
ISAT Administração
Neste projeto, usei meu máximo esforço e dedicação para deixa-lo organizado, modular, com boas práticas e pensando usuabilidade do profissional que usará. Este é um projeto para administração de usuários e dos próprios profissionais da instituição. Contando com mais de 9 tabelas no Diagrama de Entidade e Relacionamento, um controle desses dados, de acesso, de alteração deles, foi feito minunciosamente com atenção e cuidado. Todas as telas são pensadas em fácil entendimento para o profissional, e todas as ações são pensadas na facilitação do trabalho do mesmo. Mostrarei algumas páginas mais legais de explicar.
Nesta tela podemos ver que despesa/benefício são adicionados ao usuário paciente, ambas essas listas são carregadas via fetch API, já previamente adicionadas em uma tela de adição. Neste `modal` já podemos verificar uma adição de familiar/entre outros, com botão de fechar caso desista. Nesta tela, todas as adições podem ser feitas em conjunto, muitas despesas, muitos benefícios ou muitos familiares, para então serem adicionados ao Banco de dados.
Nesta tela de controle de profissionais para a diretoria, pode-se criar cargos e projetos dos profissionais e alteração do projeto. A exibição das listas é carregada via fetch API, atualizada instantânea. Na primeira guia é o cadastro com uma senha automatica da instituição, e na guia funcionários, posso filtrar por projeto ou cargo, adicionei um botão de confirmação para a ação de `desativar funcionário` e `resetar senha`.
No primeiro login, o profissional é solicitado a redefinir sua senha, que é armazenada com criptografia segura utilizando password_hash. Dependendo do cargo ele terá acesso a opções extra do menu. Todo cargo tem seu campo sigiloso sobre o usuário/paciente. Em caso de esquecimento de senha, a diretoria pode redefinir pra senha inicial proposta da instituição.
A primeira tela, provavelmente a mais utilizada pela instituição, permite que o profissional cadastre um novo usuário, descreva sua situação, defina o tipo de atendimento e salve no sistema. é gerado um documento Word contendo as informações do atendimento. Na tela de edição, é possível alterar diversos campos relacionados ao usuário, como dados de saúde e moradia. Esses campos não exigem exibição completa — apenas um pequeno exemplo, como mostrado na primeira imagem, é suficiente para demonstrar a complexidade.
AGCoram - Wordpress Plugin
Neste projeto já iniciado em Wordpress, Em PHP fiz a atualização do gerenciamento de usuários do banco de dados do mesmo, com a opção de cadastramento, exclusão, atualização e remoção. Também fiz algumas configurações do próprio Wordpress, utilizei ferramentas de personalização como Elementor, JQuery, integração de API, Hooks do Wordpress e Hooks de plugins, e a opção de gerar uma planinha ou arquivo CSV dos usuários cadastrados. Foi minha primeira vez utilizando CMS, Wordpress é bem organizado e também fiz tratativas de respostas pela API de pagamento.
A busca é feita usando AJAX, e fiz conforme o usuário digita as respostas mudam pela requisição. Usei um 'where like' simples para trazer mais resultados possiveis que chegassem perto da pesquisa digitada.
A tela de perfil exibe informações do usuário, trazendo todas por shortcode, optei por não usar Modelo de página. Também trazendo a foto do perfil do usuário e verificando se o usuário existe no sistema em caso de alteração de URL.
A tela de Gerenciamento de Usuários, na entrada já exibe os 10 últimos cadastros de usuários e, ainda que pouco rebuscada, tem todas as ações principais citadas acima: De controle de usuários, alteração de qualquer dado, com verificação de campos nulos. Além disso, permite pesquisar por ID, CPF, RG para alteração de um usuário específico.
Ebook Manager
Este projeto é de longe o projeto que considero mais ideal e bonito, é um site de compartilhamento de livros ebook, onde o usuário entra com seu login, salva os seus livros, e pode baixar os livros de outras pessoas que o colocaram publico. Tem tela administrativa, onde eu como administrador do site, posso cadastrar um novo gênero, categoria, cadastrar novos livros, e aceitar comentários. O site tem busca de livros, tem livro destaque, livro mais lidos, comentários do livro, ele é completo. Vale ressalvar que eu não escrevi uma linha de front-end nesse projeto(fora a sessão administrativa que foi inteira feita por mim), o website em si eu fiz apenas a parte back-end, era um projeto final de curso e tarefas foram divididas. A primeira versão dele foi escrita em PHP, mas quando passei a estudar NodeJS eu fiz a atualização dele pra server side rendering com NodeJS.
Com um um livro de destaque que se atualiza a cada 3 dias, uma tela de login, últimos livros adicionados e mais lidos, esse é a página inicial. Todos os gêneros, categorias são cadastrados no banco de dados podendo ter fácil adição de novos.
Este é a tela de busca de livros, onde trás os livros. Eu fiz uma query onde me traria resultado com o nome do autor, e do livro. Também coloquei filtros de data de lançamento e e ordem alfabética.
Contatos
Este na verdade foi meu primeiro projeto sem seguir nenhum curso em NodeJS, usando SSR, é um CRUD que eu fiz mais pra fixar o conhecimento. Também quis seguir a documentação da MongoDB pra aprender sobre os banco de dados não relacionais. Também optei por tudo ser carregado em apenas uma tela.
Aqui eu fiz uma tela de login e cadastramento, usei crypto pra criptografar a senha e usei de recursos JS DOm pra transladar entre login e cadastro.
Aqui é a listagem de contatos salvos, com a opção de deletar e ver mais(onde possivelmente poderá ser editado). Como é a listagem, eu também fiz questão de fazer sempre que o usuário digitar alguma letra na barra de pesquisa já troca para essa tela de listagem.
Contatos(Com React)
Logo após me sentir bem com NodeJS, abri a documentação do React e comecei a estudar os principios, aprendi as boas práticas, tudo são componentes, o principal sobre Hooks, conceito de imutabilidade, e como fazer a requisição a API com Cors. Ainda dei uma pincelada em styled-components para css, foi ótimo minha interação com React TS. Me dei desafios, e seguindo somente a documentação tive de resolve-los.
Todo o front feito por react, eu me preocupei sempre em seguir as boas práticas, e também novos desafios pra mim, coisas que eu imaginaria ser mais complicado no javascript puro, logo eu quis fazer um menu que alternasse a exibição do componente, como tudo é componente eu pensei ser mais fácil manipular com React do que Javascript puro.
Na Listagem de contatos salvos, não teve grande segredo, nada de diferente. Aqui foi onde eu pude mais treinar styled-components
Me dei o desafio de criar um ContextMenu(menu clicado com o botão direito) em cada contato, pra treinar esse React, o conclui com sucesso. Ao clicar em cada contato aparece Deletar ou Editar.
Ao clicar em Editar, me dei o outro desafio, criar um modal e imprimir o mesmo formulário do cadastramento. Também conclui com sucesso, foi aqui que precisei usar bastante as props do react, apesar de ter feito todos os meus próprios desafios, e ter ficado completo, me dei uma pausa sobre React, precisaria aprender mais sobre boas práticas, não usar de recursos de má programação.(Digo isto porque criar um contextmenu de uma lista, que passa o id do contato, para um outro modal que, foi bem trabalhoso pra um iniciante em react haha)
Um pouco de tudo web aqui
Eu realmente gostava de brincar com programação web, então eu fazia layouts de sites, brincavas com as propriedades de css para ver o que podia fazer, e fazia desafios javascript a mim mesmo, como fazer um jogo da memória, entre outras coisas, decidi colocar todas as coisas que eu fazia quando não tinha nada pra fazer. A maioria dos desafios Javascript eu fiz mexendo com DOM e então eu criava o elemento por Javascript e os Layouts eu fazia a versão responsiva mobile também, e sempre deixava todo o CSS organizado, logo clicar em qualquer um mostra que eu treinava todas as áreas ao mesmo tempo.

.png)
.png)
.png)
.png)













