menu
theme

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.

improject

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.

improject

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`.

improject

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.

improject

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.

improject

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.

improject

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.

improject

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.

improject

Interface de atualização de clientes integrada à API do sistema de pagamentos, permitindo a edição de dados cadastrais e garantindo a sincronização com a plataforma.

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.

improject

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.

improject

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.

improject

A página do livro, que era responsável por mostrar comentários dos livros, e a opção de download. Com todas as informações do livro, salvas e resgatadas do banco de dados.

improject

Esta era a tela de Driver do usuário, onde ele salvava seus ebooks pessoais, podendo alternar entre privado e publico. Caso publico poderia ser baixado por outras pessoas.

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.

improject

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.

improject

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.

improject

Nesta terceira tela, eu criei o cadastramento de contatos, uma pequena verificação para todas informações obrigatórias, e opção para mais de uma rede social e número de contato.

improject

Na tela de ver mais, onde eu posso editar as informações daquele contato específico e salva-la no banco de dados.

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.

improject

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.

improject

Na Listagem de contatos salvos, não teve grande segredo, nada de diferente. Aqui foi onde eu pude mais treinar styled-components

improject

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.

improject

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.

Contato