Pular para o conteúdo
Correio dos Campos

Um jornal diário inteiro, da capa ao edital assinado.

Site público desenhado para quem lê no celular, painel com 22 telas para a redação operar sozinha, módulo comercial que fotografa e comprova cada anúncio, e publicações legais com assinatura ICP-Brasil. Um sistema só, com oito anos de acervo dentro dele.

Cliente
Correio dos Campos
Contexto
Jornal diário · Ponta Grossa e Campos Gerais, PR
Período
Agosto e setembro de 2026
O que fizemos
Produto · Design · Desenvolvimento · Infraestrutura · Migração · Sustentação
correiodoscampos.com.br
correiodoscampos.com.br
Home do Correio dos Campos: barra de data e hora, logotipo, menu de editorias, mais lidas e a matéria de abertura

A home no desktop, com a barra de data e hora que nasceu de uma necessidade comercial.

A obra

001

Não uma camada do jornal. O jornal inteiro.

  • Site públicohome, editorias, matéria, busca, guia comercial e páginas institucionais
  • Painel de redaçãoescrita, publicação, mídia, taxonomias, contas e permissões
  • Comercialanúncios, agendamento, comprovante de veiculação e guia de anunciantes
  • Publicações legaiseditais com assinatura digital ICP-Brasil
  • InfraestruturaVPS, servidor web, CDN de mídia, certificados, automações e implantação
  • Migraçãoo acervo desde 2017, com as URLs preservadas uma a uma

Seis frentes que costumam ser seis fornecedores, entregues como um sistema só: o site que o leitor vê, o painel onde a redação escreve, o módulo que sustenta a receita, as publicações legais com assinatura digital, a infraestrutura embaixo de tudo e o acervo de oito anos trazido inteiro. Uma linguagem visual, um lugar para operar, um caminho de publicação.

A direção visual foi fechada com o cliente em 27 de agosto, e é uma escolha editorial antes de ser estética: home cronológica agrupada por dia, base neutra com o vinho da marca reservado ao que é do jornal, e densidade espaçosa. O diário ganhou respiro de revista sem perder o ritmo de diário — menos matérias por tela, compensadas pelo agrupamento por dia e pelo carregamento incremental.

O jornal saiu de uma plataforma proprietária para ter a própria, e o acervo entrou junto: 59.447 matérias servidas pelo sistema novo, cada uma no endereço que já tinha. O site rodou em paralelo ao antigo até estar conferido, e só então recebeu o domínio.

O site público

002

Desenhado como jornal, não como blog.

O leitor do Correio lê no telefone, chega por busca e volta por assunto local. O layout foi desenhado para essa sessão curta e de alta frequência — e para parecer um jornal enquanto faz isso: chapéu, título, subtítulo, crédito de imagem e tempo de leitura em cada matéria.

A home é cronológica, agrupada por dia — é assim que um jornal diário se lê: o que saiu hoje, depois o que saiu ontem. Abaixo da abertura vieram seções próprias, cada uma com sua linguagem visual: Obituários, Vagas de Emprego, Publicações Oficiais e Guia Comercial.

Obituário e Vagas ficam fora da abertura de propósito. São serviço, não notícia: quem procura vai direto à seção, e quem não procura não tropeça neles entre as últimas matérias.

O conteúdo se organiza por duas taxonomias paralelas, e não por uma hierarquia. São 28 no total: 14 cidades, que definem a URL da matéria, e 14 editorias, que definem o assunto. As duas compartilham a mesma rota de seção, então cidade e editoria funcionam como seções equivalentes para o leitor. Criar uma editoria hoje é operação de painel, não de código.

Capturas do sistema em produção. Dados pessoais de terceiros foram apagados.

No celular e no tablet

Publicidade

003

A receita do jornal, tratada com o cuidado do editorial.

São seis posições, cada uma com o formato declarado na própria página Anuncie — com a medida de envio, a medida de tela e o diagrama na escala real.

Cada anúncio tem início e fim. Fora da janela ele não veicula, e o painel diz o motivo em português: o prazo venceu, sem criativo, pausado. Pausar tira do ar sem mexer nas datas, para segurar um anúncio sem perder o contrato, e a renovação de prazo é um clique.

Quando há vários anúncios ativos na mesma posição, o site sorteia a cada requisição em vez de mostrar sempre o primeiro. No sistema antigo, o campo de ordem fazia um anunciante levar todas as impressões.

O painel pede a arte no dobro da medida de tela, porque celular tem de 2 a 3 pixels por ponto. E a arte é guardada byte a byte, sem passar pelo conversor de foto: comprimir de novo um JPG que já veio comprimido borra texto pequeno e colorido, que é exatamente do que banner é feito. GIF animado é preservado com todos os quadros, e o rodapé fixo aceita um segundo criativo só para o telefone.

As seis posições
PosiçãoFormato na telaOnde aparece
Topo fixo920 × 150acima do conteúdo, em todas as páginas
Lateral300 × 600coluna da direita
Dentro da matéria300 × 250no meio do texto
Inferior920 × 150pé do conteúdo
Rodapé fixo1200 × 110, e 320 × 50 no celularbarra colada no rodapé
Horizontal920 × 150reservado, fora do ar

Capturas do sistema em produção. Dados pessoais de terceiros foram apagados.

Comprovante

004

A prova de veiculação pronta antes de o anunciante pedir.

O anunciante quer ver o anúncio dele na página, e o jornal precisa provar que circulou. Um navegador sem tela abre o site, encontra cada anúncio no ar e fotografa a página inteira com o anúncio dentro dela — com a data e a hora visíveis na barra do topo, que existe justamente para isso. Os horários são 8h, 10h, 12h, 14h, 16h e 18h.

A matéria fotografada muda todo dia. No começo a captura pegava sempre a mesma, e o cliente recebia trinta prints idênticos no mês. Hoje a página varia, o que mostra o anúncio em contextos diferentes e comunica muito melhor.

Às 22h sai o envio. Cada anunciante recebe o comprovante dos próprios anúncios, no e-mail cadastrado; o comercial recebe o relatório interno completo, com a carteira inteira e também o que não circulou. O painel guarda o histórico com data, hora, destinatário, peso e quantos comprovantes iam anexados.

Uma regra de privacidade foi escrita dentro do gerador: o e-mail de um cliente nunca pode listar anúncio de outro. E os comprovantes ficam fora da raiz da mídia servida pelo CDN — a própria implantação se recusa a subir se essa pasta estiver dentro da pública.

Capturas do sistema em produção. Dados pessoais de terceiros foram apagados.

Publicações legais

005

O edital sai do painel já assinado, com validade jurídica.

Publicar edital é serviço regulado e fonte de receita: cartório, tribunal e órgão de controle precisam de um PDF com assinatura íntegra, não do HTML da página. O módulo de assinatura tinha ficado com o fornecedor antigo e foi refeito dentro do painel.

O redator envia o PDF pela própria tela da publicação. O servidor assina com o certificado A1 do jornal, no padrão ICP-Brasil, e vincula o arquivo à matéria — na mesma árvore de mídia dos 453 PDFs herdados, com o mesmo sufixo, para que antigos e novos fiquem indistinguíveis para quem baixa.

PDF que já chega assinado não é assinado de novo. Reassinar altera o documento e invalida a assinatura anterior: o arquivo pareceria assinado e falharia na conferência. O sistema detecta, guarda como está e avisa na tela.

O certificado é vigiado. O painel mostra a validade como índice operacional e avisa com 30 dias de antecedência; vencido, a tela diz que não dá para assinar até renovar, em vez de deixar o redator descobrir no erro.

Capturas do sistema em produção. Dados pessoais de terceiros foram apagados.

O painel

006

22 telas para a redação operar sozinha.

A tela de abertura não é decorativa: quatro indicadores ao vivo, um gráfico de 7 e 30 dias, o que mudou por último e os índices operacionais — anúncios no ar, publicações assinadas, validade do certificado.

Os papéis somam, em vez de formar escada. O modelo antigo era uma hierarquia: admin continha editor, que continha redator. Escada não descreve uma redação — quem cuida de anúncio não escreve matéria, e quem administra contas não necessariamente publica. Abaixo dos quatro papéis há 12 poderes granulares, e diante de qualquer valor inesperado no banco a regra cai para o menor privilégio, nunca para o maior.

O editor de matéria tem título, chapéu, subtítulo, corpo em texto rico, imagem com crédito, taxonomias, agendamento e pré-visualização. O texto colado de fora passa por uma limpeza que preserva o que é conteúdo e descarta o que é lixo de editor — com teste até para o caso de palavras se grudarem na fronteira das tags.

A biblioteca guarda 69.695 registros e 346.100 arquivos, organizados por data. Cada foto enviada gera cinco variantes, para o navegador escolher a mais leve que sirva. Cada tela explica a si mesma: os campos têm ajuda em português claro, dizendo o que acontece se ficarem em branco.

Papéis que se somam
PapelO que alcança
Redatorescrever matéria e edital, enviar mídia
Editortudo do redator, mais excluir e gerir taxonomias
Comercialanúncios e guia comercial, sem tocar no editorial
Admincontas, assinantes e exclusão de publicação

Capturas do sistema em produção. Dados pessoais de terceiros foram apagados.

Migração e infra

007

Oito anos de jornal mudaram de casa sem trocar de endereço.

Zero

endereços quebrados na virada. As 59.447 URLs do acervo, os 346.100 arquivos de mídia e os 453 PDFs herdados continuaram no mesmo lugar, e o sitemap saiu com 59.345 endereços em três arquivos.

São oito anos de matéria indexada no Google, compartilhada em rede social e citada em outros sites. Cada um desses endereços continuou respondendo exatamente como respondia antes, e a importação tem um script separado de conferência que compara o que entrou com o que existia.

Slugs corrompidos foram mantidos corrompidos, de propósito. O sistema anterior gravava acentuação com defeito, e corrigir teria quebrado todos os links que já circulavam por aí. O acervo ficou com o endereço torto; só as edições novas nascem com o slug correto. A mídia também manteve o caminho, porque a pasta por data está escrita dentro do HTML de cada matéria — reescrever o corpo de 59 mil textos seria arriscado e desnecessário.

Tudo roda numa VPS Ubuntu com 4 vCPU e 7,8 GB de RAM, dividida com outros dois sistemas da agência, e isso definiu quase todas as escolhas: nginx na frente com cache de página próprio, Node atrás como serviço do sistema operacional, MongoDB local e a mídia num subdomínio à parte com cache de um ano. As páginas são servidas estáticas e revalidadas a cada minuto — com 59.447 URLs, pré-gerar tudo a cada build seria inviável.

São 141 testes automatizados em 30 suítes, rodados antes de qualquer publicação. Eles cobrem justamente as funções onde o erro é silencioso e o build passa verde: montagem de permalink, janela de veiculação, acumulação de papéis, datas no fuso de Ponta Grossa, higienização de texto colado, preservação de arte e de GIF animado, aviso de vencimento do certificado.

A implantação é um caminho só, com volta: confere o ambiente, recusa subir se os comprovantes estiverem na pasta pública, roda os testes, guarda o build atual, constrói o novo, reinicia e espera o site responder. Se qualquer passo falhar, o build anterior volta e o site continua no ar — nunca fica no meio.

Detalhes

008

Cinco decisões que só aparecem de perto.

Stack

009

Tudo roda na própria máquina: nenhum serviço pago para busca, imagem ou envio.

Seu sistema pode ser o próximo.

Conte o que a sua operação precisa resolver. A gente volta com o caminho — e com o que dá para colocar no ar primeiro.