Construído sobre Perl
Toda a arquitetura do Chinaski , um CMS em Perl, um builder de sites estáticos em Perl e um banco de dados SQLite , repousa sobre uma aposta deliberada: tecnologia chata sobrevive à tecnologia empolgante em produção. Esta página explica o raciocínio por trás dessa escolha, nas palavras do próprio projeto, e o que ela significa para você como operador.
Uma linguagem estável há décadas
Perl 5 é chato dos jeitos certos. A interface binária não quebrou entre lançamentos menores em décadas. As dependências não se renomeiam sozinhas. A linguagem vem no Debian por padrão, sem compilador acrescentado por cima. Um programa Perl escrito em 2005 ainda roda hoje , na visão do projeto, essa é a escolha de engenharia correta para software de infraestrutura que precisa ser depurável às 2 da manhã por alguém que não o escreveu.
O argumento da superfície de ataque também favorece a estabilidade: uma linguagem fixa com dependências empacotadas no Debian é menor e mais auditável que uma stack cuja árvore node_modules ou requirements.txt muda por baixo de você entre lançamentos.
O que o próprio projeto usa
A aplicação de administração (Mojolicious), o builder estático (Template Toolkit), a camada de banco de dados embutida (DBI com DBD::SQLite) e o processamento de imagens (Imager , sem shell-out para o ImageMagick) são as escolhas práticas. As peças de segurança também são padrão: hashing de senhas por bcrypt via Crypt::Passphrase, criptografia AES-256-GCM para credenciais armazenadas e assinatura de sessão HMAC via CryptX, e DateTime com DateTime::TimeZone usando o banco de dados de fusos IANA para agendamento correto.
Onde um subsistema precisa de poder opcional , o importador de Markdown, por exemplo , esses módulos carregam de forma preguiçosa e só no momento em que são necessários. Um site sem um deles sobe e serve todo o resto; apenas aquela rota degrada, com uma mensagem clara na área de administração.
A aposta das dependências
A maioria dos sistemas de gerenciamento de conteúdo acumula superfície , plugins, integrações, endpoints de analytics, assets de CDN. Cada acréscimo aposta que a capacidade adicionada vale a complexidade e a superfície de ataque adicionadas, e como o README do projeto diz, a maioria das apostas se paga em demos e perde em produção. O Chinaski faz a aposta oposta.
Resultados concretos dessa aposta, como o projeto os documenta:
- Uma lista pequena de dependências contida inteiramente no Debian stable , uma instalação nova resolve inteiramente a partir de pacotes do sistema, sem compilação.
- Zero JavaScript em runtime na saída pública , uma garantia estrutural em vez de uma promessa de política. O servidor web Caddy serve arquivos estáticos do disco; a aplicação Perl nunca está no caminho público das requisições, então não há mecanismo para um beacon embarcar nas suas páginas.
- Compatível com air-gap por padrão , sem telemetria, sem validação de licença contra um servidor externo, sem fontes ou ícones de CDN. Uma vez instalado, o Chinaski não precisa da internet. Todas as integrações capazes de conexões de saída (checagem de atualizações, SMTP, webhooks, backups em nuvem) vêm desligadas até que você as ligue deliberadamente.
Construído com IA, roda sem IA
O Chinaski foi escrito com assistência de IA (Claude Code e Kimi) e espera-se que seja mantido da mesma forma. A estabilidade do Perl torna isso incomumente auditável: a linguagem não mudou seus idiomas em trinta anos, então código gerado lê-se limpo de ponta a ponta. A posição do projeto é que fluência em IA é a habilidade de contribuição relevante , fluência em Perl não é exigida para manter o Chinaski.
Trade-offs honestos
O minimalismo tem custos reais, que o projeto declara com franqueza:
- Não há ecossistema de plugins , sem arquitetura de hooks, sem registro de plugins, sem marketplace de temas.
- O banco de dados é SQLite, não Postgres (Postgres está planejado para um futuro tier multi-tenant).
- Continua sendo um trabalho operacionalmente envolvido: você é dono do servidor, do banco de dados e dos backups.
Se você opera muitos sites de clientes e quer stacks idênticas que possa reconstruir com confiança, esse trade é atraente. Se você precisa do ecossistema que uma plataforma maior traz, isso é exatamente o que o Chinaski se recusa a fornecer.
O que isso significa para você
O retorno prático da escolha da linguagem aparece na operação, não no marketing:
- Instale uma vez, reinicie menos. A stack vem como pacotes da distribuição , sem turbulência de framework entre atualizações do sistema.
- Leia o código. A implementação vive em um pequeno número de arquivos, escrita com comentários primeiro e estruturada para que correções não exijam arqueologia , os trinta anos estáveis de idiomas da linguagem mantêm tudo simples.
- Saída auditável. As afirmações relevantes para segurança (manipulação de sessão, criptografia em repouso, sem telemetria) são todas impostas em lugares únicos do código , nada para auditar por cinco diretórios.
- O core é licenciado sob MIT; futuros módulos Pro comerciais estão planejados para usar arquivos de licença assinados localmente, sem phone-home, em sintonia com a promessa de air-gap.