CMS Personalizado (este site)

PHP Laravel Vue MySql Tailwindcss SCSS

É um sistema de gerenciamento de conteúdo e portfólio profissional desenvolvido com Laravel + Vue. Ela serve a um propósito duplo: fornecer uma vitrine pública de projetos e habilidades para os visitantes, e um painel administrativo seguro para gerenciar conteúdos, arquivos e comunicações.

Propósito Principal

A aplicação facilita o gerenciamento de uma presença digital profissional. Ela permite ao proprietário:

  • Exibir uma lista selecionada de projetos técnicos e habilidades

  • Tratar mensagens de contato recebidas com notificações automáticas por e-mail.

  • Gerenciar arquivos de mídia (imagens e documentos) por meio de um repositório centralizado.

Design do Banco de Dados

diagrama DER entidades do banco de dados do site keinermendoza.com

Stack Tecnológica

O projeto utiliza um ecossistema moderno de PHP:

  • Framework: Laravel 11 (Estrutura da aplicação e API).

  • Frontend: Blade Templates (Site público) e Alpine.js (Interatividade).

  • Banco de Dados: Suportado por Eloquent ORM, configurado para MySql.

  • Autenticação: Laravel Sanctum para sessões de API seguras e persistentes.

  • Pipeline de Assets: Vite para compilação de SCSS e JavaScript.

  • Vue: Vite para contrução do Painel de Controle

Arquitetura do Sistema

A aplicação segue uma arquitetura de interface dupla, onde uma única instância do Laravel atende a dois tipos distintos de consumidores através de camadas de rotas separadas.

diagrama de stack do site keinermendoza.com

Portfólio Público

A interface pública é servida por meio de rotas web padrão. Ela utiliza o escopo personalizados do Eloquent public() para garantir que apenas conteúdos publicados fiquem visíveis para os visitantes. O ponto de entrada principal é a view welcome, que reúne os projetos e habilidades. Fornece accesso apenas de leitura (escopos públicos).

Tegnologías:

  • Blade

  • Tailwindcs e SCSS

  • Javascript e Alpine

Painel Administrativo

O backend administrativo é acessível por meio de uma API versionada (/api/v1). Esta camada é protegida pelos middlewares Sanctum + AdminMiddleware ( Middelware Personalizado). Ela fornece endpoints padrão do tipo apiResource para gerenciar as entidades do portfólio.

Tegnologías:

  • Laravel API REST

  • Vue / Pinia / PrimeVue

  • Tailwind

Gerenciamento de Mídia & Documentos

O sistema gerencia imagens e documentos com foco específico na acessibilidade pública por meio de UUIDs. As imagens são salvas localmente e servidas através de um controller dedicado para abstrair o caminho do arquivo.