A plataforma FAPESB em uma imagem
O usuário acessa um único endereço e faz um único login no Keycloak. O gateway Nginx encaminha cada endereço para um de quatro módulos: Submissão (Z Future, Nuxt), Contratação (Myappnow), Prestação de Contas (MTM) e Bolsas (Empresa D). Todos usam o mesmo cabeçalho, @fapesb/shell. Cada módulo tem app, API em TypeScript e banco PostgreSQL 18 próprio, e os módulos só conversam pela API. O que é comum vem em pacotes do Verdaccio. Cada empresa trabalha no próprio GitHub ou GitLab e publica a imagem do seu app e da sua API nos servidores da FAPESB.
A plataforma FAPESB em uma imagem
Quatro empresas, quatro módulos, um produto. Siga os números.
Como ler
1
O usuário entra por
um endereço só.
2
Faz um login só, no
Keycloak da FAPESB.
3
O gateway manda cada
endereço para o seu módulo.
4
Todos os módulos mostram
o mesmo cabeçalho.
5
Cada módulo tem app,
API e banco próprios,
no framework da empresa.
6
Um módulo fala com outro
só pela API, nunca
pelo banco.
7
O que é igual para todos
vem em pacotes do
Verdaccio.
8
Cada empresa trabalha
no seu GitHub ou GitLab
e publica nos servidores
da FAPESB.
Cores das empresas
Z Future · Submissão
Myappnow · Contratação
MTM · Prestação de Contas
Empresa D · Bolsas
comum a todos
1
Você, no
navegador
plataforma.fapesb.ba.gov.br
um endereço para tudo
2
Keycloak da FAPESB
um login para todos os módulos · MTM
3
Gateway Nginx: cada endereço vai para o seu módulo
4
@fapesb/shell
: o mesmo cabeçalho, menu e rodapé em todos · visual do Padrão Digital de Governo
5
Submissão
/submissao · Z Future
App
Nuxt (Vue)
API
TypeScript
PostgreSQL 18
fapesb_submissao
Contratação
/contratacao · Myappnow
App
Next, Nuxt ou Angular
API
TypeScript
PostgreSQL 18
fapesb_contratacao
Prestação de Contas
/prestacao · MTM
App
framework da MTM
API
TypeScript
PostgreSQL 18
fapesb_prestacao
Bolsas
/bolsas · Empresa D (a confirmar)
App
framework da empresa
API
TypeScript
PostgreSQL 18
fapesb_bolsas
projeto
aprovado
contrato e
orçamento
bolsistas
e prazos
6
bun install
7
Verdaccio · pacotes
@fapesb/*
que todos instalam
shell
· cabeçalho comum
estilo
· Sass + gov.br
contratos
· tipos das APIs
base
· login, erros, logs
8
Git da Z Future
GitHub ou GitLab
Git da Myappnow
GitHub ou GitLab
Git da MTM
GitHub ou GitLab
Git da Empresa D
GitHub ou GitLab
bun publish (só quem é dono do pacote)
imagem do app e da API
Servidores da FAPESB
cada empresa publica no seu ritmo · homologação integrada antes de produção
Regras de ouro
Nunca leia o banco
de outro módulo.
Precisa de um dado de outra
empresa? Use a API dela,
com contrato OpenAPI.
Não faça login, cabeçalho
nem menu próprios.
Use o Keycloak e o
@fapesb/shell
.
Estilo só em Sass,
com os tokens do gov.br.
Nada de cor ou medida
inventada.
TypeScript em tudo.
Python só no serviço de IA.
Banco: PostgreSQL 18.
Ferramenta: Bun e Node 24.
Mudou algo que outra
empresa usa?
Abra uma RFC. O comitê das
4 empresas decide em até
5 dias úteis.
Mesmos nomes em tudo.
URLs em kebab-case,
banco em snake_case,
commits convencionais.
Detalhes, edital e glossário:
fapesb-plataforma-guia.pages.dev
Edital FAPESB nº 027/2025 · Z Future