Conceitos Centrais
A arquitetura e o modelo de conteúdo por baixo do Chinaski: o modelo mental que vale quarenta minutos antes de construir qualquer coisa substancial. Tudo nesta seção reflete como o sistema realmente se comporta; a seção Authoring cobre os cliques do dia a dia.
Nesta seção
- Arquitetura: o design de dois programas: um CMS em Perl que domina a camada de administração, um processo builder separado produzindo o site público e um servidor web servindo arquivos puros.
- O Pipeline de Build: o que acontece em cada build: staging, verificações, assinatura, promoção, e por que um build ou chega por completo ou não chega de forma alguma.
- Modelo de Conteúdo: páginas, posts, blocos, snippets, categorias, mídia, documentos: o que cada tipo é e as propriedades que compartilham (idioma, trash, revisões, auditorias).
- Estrutura de Saída: como o site construído fica em disco: árvores por idioma, arquivos index, os arquivos de redirecionamento, sitemaps e feeds.
- O Banco de Dados: um arquivo SQLite como única fonte de verdade; por que um banco de dados embutido é a escolha certa aqui e o que isso significa operacionalmente.
- Instâncias: rodar vários sites independentes do Chinaski em um servidor, e as convenções de nomes/caminhos que tornam isso seguro.
- Jobs em Segundo Plano: a fila de trabalho assíncrona por trás das tarefas administrativas de longa duração.
- Lixeira: o modelo de exclusão reversível: o que vai para a lixeira, quanto tempo permanece lá e como restaurá-lo.
- Busca do Site: como o índice de busca embutido é gerado e consultado.
As ideias que vale internalizar
- O site é saída de build. O site voltado ao navegador são arquivos estáticos; qualquer edição é invisível até que um build rode, e um build ou se completa (e promove atomicamente) ou preserva o que já estava no ar.
- Um banco de dados, árvores por idioma. Todo o estado vive em
chinaski.db; a saída é uma função pura desse banco de dados mais seus temas e configurações, o que torna os backups tão simples e os rebuilds tão seguros. - O servidor web e o CMS só se encontram deliberadamente. Requisições estáticas nunca tocam na aplicação; apenas formulários, downloads de documentos e o admin a atingem.
- Isolamento de instâncias dá a uma máquina muitos sites não relacionados, com bancos de dados, usuários e agendamentos separados.
Também em Conceitos Centrais
Entenda as quatro peças do Chinaski, o app de admin, o builder, a saída estática e o manager, e como elas se relacionam entre si.
Como um build transforma o banco no site estático: como começa, por que só um roda por vez e a troca de arquivos apenas em caso de sucesso.
Conheça os tipos de conteúdo de um site Chinaski (páginas, posts, blocks, snippets, mídia, navegação) e a base que todos compartilham.
Todo build produz uma árvore de diretórios simples de arquivos. Esta página mapeia o que vive onde, para que você saiba exatamente o que entra no ar.
Como o Chinaski guarda tudo em um arquivo SQLite por instância: CHINASKI_DB, modo WAL, timeout de bloqueio e migrações executadas na inicialização.
O que é uma instância do Chinaski: processo, banco de dados, arquivos, backups e segredo próprios, e o que é isolado entre instâncias e o que não é.
Processe lotes de conteúdo muito grandes pela fila de jobs: envie POST /api/jobs, escolha o tipo de job e acompanhe até os contadores se fixarem.
Entenda a lixeira: os dez tipos de conteúdo cobertos, como restaurar itens e quando a limpeza de 30 dias os remove de vez.
Entenda a página /search/ embutida: um índice JSON estático por idioma, consultado no navegador, o que cobre e como se mantém atualizado.