"O paranormal não vem para a nossa realidade de maneira fácil... a Realidade tende a se curar."
Um sistema web imersivo Full-Stack desenvolvido para auxiliar narrativas do RPG de mesa Ordem Paranormal. A aplicação serve como um "hub" digital onde o Mestre pode gerenciar documentos e pistas, enquanto os jogadores acessam um banco de dados interativo para investigar evidências em tempo real.
Este projeto foi criado para resolver a necessidade de compartilhar pistas visuais (mapas, documentos, fotos) de forma organizada e imersiva durante as sessões de RPG.
O sistema é dividido em duas interfaces:
- Terminal do Mestre (Admin): Painel protegido por senha onde o narrador cria missões, faz upload de pistas e controla a visibilidade (revelar/esconder) de cada item.
- Base de Dados (Pública): Interface responsiva para os jogadores visualizarem as pistas reveladas pelo mestre, simulando um acesso a um sistema de investigação.
- Autenticação Segura: Proteção de rota via Middleware e Cookies (Senha mestra).
- Gestão de Missões: Criar, editar e arquivar pastas de casos.
- Gestão de Evidências: Adicionar links de imagens e descrições.
- Controle de Visibilidade: Botão "Revelar" que atualiza instantaneamente o que os jogadores podem ver.
- Design Responsivo: Painel totalmente funcional em celulares e tablets.
- Imersão Visual: Interface estilo "Terminal Hacker" / Dossiê.
- Zoom de Alta Qualidade: Visualização detalhada de documentos sem perda de qualidade.
- Mobile-First: Layout adaptável para consulta rápida via celular durante a sessão.
- Feedback Visual: Indicadores de novas evidências e status das missões.
O projeto foi construído utilizando as melhores práticas do desenvolvimento web moderno:
- Next.js 15: Framework React com App Router e Server Actions.
- TypeScript: Tipagem estática para segurança do código.
- Tailwind CSS: Estilização utilitária para design rápido e responsivo.
- tRPC: Comunicação type-safe entre Frontend e Backend.
- Prisma: ORM para manipulação do banco de dados.
- MySQL: Banco de dados relacional (Hospedado no Railway).
- Zod: Validação de esquemas e dados.
Pré-requisitos: Node.js e gerenciador de pacotes (npm, pnpm ou yarn).
-
Clone o repositório
git clone [https://github.com/seu-usuario/ordem-rpg.git](https://github.com/seu-usuario/ordem-rpg.git) cd ordem-rpg -
Instale as dependências
pnpm install
-
Configure as Variáveis de Ambiente Crie um arquivo
.envna raiz e preencha:DATABASE_URL="mysql://usuario:senha@host:porta/banco" ADMIN_PASSWORD="sua_senha_secreta"
-
Sincronize o Banco de Dados
pnpm db:push
-
Inicie o Servidor
pnpm dev
Acesse em
http://localhost:3000.
Desenvolvido por Alex Batista Estudante de Engenharia da Computação - UnB