Voltar para a vitrine
Corporativo · ReservasSistema completo

Banana Room Booking

Reserva de salas corporativas com autenticação própria e dois backends independentes.

ouça em ~1min25

// Preview do projeto

Resumo do produto

Sistema de reserva de salas de reunião com arquitetura de microsserviços: serviço de autenticação em .NET 8 (JWT), API de reservas em Python/FastAPI e interface web React. O JWT emitido no login é enviado automaticamente em todas as requisições.

O problema que resolve

Em escritórios médios, reservar uma sala vira caos de planilhas, e-mails e conflitos de horário. Sem controle centralizado de quem pode reservar e sem visão em tempo real das salas, o time perde produtividade.

Por que foi construído

Construído como desafio técnico que exigia separação clara de responsabilidades (auth, domínio e UI) e integração segura entre serviços com tokens JWT.

Como funciona na prática

Uma interface única de reservas que fala com dois serviços: o de autenticação (cadastro/login com hash seguro de senha) e o de reservas (CRUD com validações de conflito). O token JWT trafega automaticamente, mantendo as regras no lugar certo.

Stack técnica por camada

Frontend

  • React 18 + TypeScript + ViteUI com React Router, Axios (interceptors de JWT), React Hook Form e Zod

Backend (auth)

  • .NET 8 + ASP.NET Core Web APICadastro, login e emissão de JWT com BCrypt e EF Core

Backend (reservas)

  • Python + FastAPI + SQLAlchemyCRUD de reservas com validação de conflito e migrações Alembic

Banco de dados

  • SQL Server + PostgreSQLUm banco relacional por serviço, com versionamento de schema

* Versões exatas e detalhes de configuração são informados na proposta, conforme a personalização escolhida.

Funcionalidades principais

  • Autenticação e cadastro com senha hasheada (BCrypt) e JWT
  • Injeção automática do token nas requisições (interceptor)
  • Gestão de reservas com tratamento de conflitos de horário
  • Documentação Swagger nos dois backends
  • Validação tipada de formulários (React Hook Form + Zod)

O que dá para personalizar

  • Adicionar salas por andar/filial, equipamentos e regras de horário
  • Integrar ao calendário corporativo (Outlook/Google)
  • Incluir aprovação de gestor e relatórios de ocupação
  • Trocar camadas: frontend→Angular, auth→Node/Python, bancos→SQL Server/PostgreSQL puro

Cada alteração de camada ou funcionalidade entra no orçamento com prazo e custo transparentes — o software é seu, não uma caixa fechada.

Gostou do Banana Room Booking?

Ele pode ser o ponto de partida do seu projeto — igual, adaptado ou só uma inspiração. E se o seu caso for totalmente diferente — um desafio não trivial, que pede análise e requisitos — também funciona: o orçamento é grátis e sem compromisso.