Skip to content

Hibex-Solutions/crystallized-perl

Repository files navigation

Crystallized Perl

Stack completo e opinativo para serviços de internet modernos em Perl.

CI License: MIT Docs


Um stack completo e opinativo para construir serviços de internet modernos em Perl — aplicações web, APIs HTTP e workers em background — fundamentado em referências reais e decisões arquiteturais documentadas.


O que este stack cobre

  • Aplicações web com HTML server-rendered e SPAs com backend Perl
  • APIs HTTP: REST, GraphQL e WebSocket
  • Workers em background e filas de jobs (processamento assíncrono)
  • Autenticação, autorização e gerenciamento de sessões
  • Observabilidade: logging, métricas e rastreamento distribuído
  • Containerização com Docker e implantação cloud-native (Kubernetes ou equivalentes)
  • Pipelines de CI/CD automatizados
  • Estratégia de testes: unitários, integração e end-to-end
  • Ferramental de desenvolvimento e ambiente local com Docker Compose

O que este stack NÃO cobre

  • Sistemas operacionais, módulos de kernel ou drivers de dispositivo
  • Engines de jogos ou gráficos em tempo real
  • Ciência de dados, aprendizado de máquina ou pipelines de dados
  • Desenvolvimento genérico de frameworks ou bibliotecas Perl
  • ETL batch ou data warehousing
  • Aplicações desktop ou GUI

Fundamentos

Cada escolha tecnológica deste stack rastreia ao menos uma fonte autoritativa externa, documentada em docs/references/. Nenhuma decisão é justificada por "senso comum" — cada uma tem uma ADR.

Referência Tipo Relevância para o stack
perl.org Portal Oficial Documentação e ecossistema oficial da linguagem
Modern Perl Livro Idiomas e boas práticas Perl contemporâneos
The Twelve-Factor App Metodologia Princípios guia para aplicações cloud-native
Docker Documentação Oficial Containerização — base da infraestrutura do stack
Mojolicious Documentação Oficial Framework web Perl moderno — escolhido em ADR-004
Kubernetes Documentação Oficial Orquestração de containers — escolhido em ADR-010

Ver docs/references/ para as 36 fontes completas.

Stack tecnológico

Camada Tecnologia ADR
Linguagem Perl 5.38+ ADR-005
Framework web Mojolicious + Hypnotoad ADR-004
Dependências Carton + cpanm ADR-005
Orientação a objetos Moo + Moo::Role ADR-006
Banco de dados PostgreSQL 16 ADR-007
Acesso relacional Mojo::Pg + Mojo::Pg::Migrations ADR-016
Dados documentais PostgreSQL JSONB ADR-017
Message broker RabbitMQ (AMQP 0-9-1) ADR-008
Autenticação Keycloak + JWT / Crypt::JWT ADR-009
Contrato de API OpenAPI v3 + Mojolicious::Plugin::OpenAPI ADR-015
Testes Test::Mojo + prove + Devel::Cover ADR-011
Containerização Docker multi-stage build ADR-005
Orquestração Kubernetes + InitContainer ADR-010
CI/CD GitHub Actions
Site de docs Docusaurus

Todas as decisões de stack estão documentadas em docs/adrs/ (ADR-000 a ADR-018). A aplicação de demonstração que exercita todo o stack é a Stega — ver ADR-018.

Documentação

O site completo da documentação está em:

hibex-solutions.github.io/crystallized-perl

Estrutura da documentação neste repositório:

Diretório Conteúdo
docs/adrs/ Architectural Decision Records — cada decisão significativa tem uma ADR
docs/references/ 36 fontes externas anotadas que fundamentam as decisões
docs/guides/ Tutoriais passo a passo (em desenvolvimento)
docs/stack/ Referência por camada tecnológica (em desenvolvimento)

Como contribuir

Leia CONTRIBUTING.md antes de abrir um pull request.

Em especial:

  • Erros de conteúdo → use o template Correção de Conteúdo
  • Novos guias → abra uma issue antes de escrever
  • Nova ADR → leia ADR-000 primeiro
  • Contestar ADR existente → abra uma issue com evidência e proposta de substituição

Ao contribuir, você concorda em seguir nosso Código de Conduta.

Licença

MIT © 2026 Hibex Solutions

Ver LICENSE para o texto completo.

About

Opinionated cloud-native Perl stack for building modern internet services — web apps, REST APIs, and background workers. Reference architecture with documented architectural decisions (ADRs).

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors