2 544
edições
m (Peter moveu SITE para Documentação dos sites: nome legivel, expansão da palavra-namespace) |
Sem resumo de edição |
||
Linha 7: | Linha 7: | ||
== Pilares filosóficos == | == Pilares filosóficos == | ||
# Máximo reuso entre projetos. | # '''Máximo reuso''' entre projetos. | ||
#* O reuso se dá pela "copia/cola" da estrutura dos [[wikipedia:source code|códigos-fonte]] e [[wikipedia:Web template system|''templates'']] de um site para outro. <br/>Por exemplo do <code>AdressForAll.org</code> para o <code>OSM.codes</code>. | #* O reuso se dá pela "copia/cola" da estrutura dos [[wikipedia:source code|códigos-fonte]] e [[wikipedia:Web template system|''templates'']] de um site para outro. <br/>Por exemplo do <code>AdressForAll.org</code> para o <code>OSM.codes</code>. | ||
# Máximo de respeito aos formatos e padrões abertos consensuais. | # Máximo de respeito aos '''formatos e padrões abertos consensuais'''. | ||
#* HTML e CSS no conteúdo, REST na interatividade. | #* HTML e CSS no conteúdo, REST na interatividade. | ||
#* Respeito aos navegadores HTML maduros e historicamente respeitadores dos padrões abertos: Firefox e Chrome (não Microsoft). | #* Respeito aos navegadores HTML maduros e historicamente respeitadores dos padrões abertos: Firefox e Chrome (não Microsoft). | ||
# Conteúdo institucional em formato transparente, igualmente legível e rápido para todas as versões de sistema e navegador. | # '''Conteúdo institucional em formato transparente''', igualmente legível e rápido para todas as versões de sistema e navegador. | ||
#* Transparente para a cartórios, como a [[wikipedia:Wayback Machine|Wayback Machine]] e similares. | #* Transparente para a cartórios, como a [[wikipedia:Wayback Machine|Wayback Machine]] e similares. | ||
#* Transparente todos os usuários, independente da versão de navegador ou poder de CPU de onde lê. | #* Transparente todos os usuários, independente da versão de navegador ou poder de CPU de onde lê. | ||
#* Transparente para a [[wikipedia:Semantic Web|Web Semântica]], conforme | #* Transparente para a [[wikipedia:Semantic Web|Web Semântica]], conforme [https://github.com/okfn-brasil/lexml-dou LexML-DOU] e [[wikipedia:Journal Article Tag Suite|padrão JATS]]. | ||
# Princípios básicos: Simplicidade Zen, [[wikipedia:Separation of concerns|"Separação das responsabilidades"]] e [[wikipedia:Convention over configuration|"Convenção sobre configuração"]]. | # '''Princípios''' básicos: [[wikipedia:Occam's razor|Simplicidade Zen]], [[wikipedia:Separation of concerns|"Separação das responsabilidades"]] e [[wikipedia:Convention over configuration|"Convenção sobre configuração"]]. | ||
== Arquitetura e reuso == | == Arquitetura e reuso do sistema == | ||
[[file:TempEngWeb016.svg|thumb|180px|Sistemas de ''template'': o template engine (processador) ]] | [[file:TempEngWeb016.svg|thumb|180px|Sistemas de ''template'': o [[wikipedia:Template processor|''template engine'']] (processador) é alimentado pelos ''dados'' e o ''template'' mais adequado à visualização do tipo de dado.]] | ||
[[File:StaticTemplates.gif|thumb| | [[File:StaticTemplates.gif|thumb|Arquitetura ''"Outside server template system"'' para o conteúdo institucional.]] | ||
Os principais aspectos da arquitetura são relativos: ao [[wikipedia:Web template system|''sistema de template'']] (ilustrado) e aos microserviços ([[wikipedia:Web service|''web services'']]). | |||
O pilar da transparência levou à arquitetura diferenciada na publicação do conteúdo: | |||
* Conteúdo institucional via arquitetura "Outside server template system" (preferível) ou "Server-side template system". | |||
* O restante opcional, pode fazer também uso de "Client-side template system". Tipicamente a navegação intranet, depois do ''login'' seria client-side. | |||
== Estrutura e requisitos das páginas== | |||
... | |||
* Institucional | |||
== Frameworks e gestão de conteúdo == | |||
Foram tomadas as seguintes decisões de projeto para a construção de todos os sites: | |||
* Conteúdo de '''documentação técnica''' em [[wikipedia:Mediawiki|Mediawiki]]: todos na <code>wiki.addressforall.org</code>, separando-se cada projeto através de ''namespaces''. | |||
* Conteúdo '''institucional gerado como HTML estático''' por [[wikipedia:Server-side scripting|''server-side building'']], com tecnologia [[wikipedia:Next.js|NextJS]]. | |||
* Conteúdo institucional, visualização de dados, intranet e relatórios públicos: tecnologia [[wikipedia:React (software)|'''ReactJS''']] em ''server-side'' e ''client-side''. | |||
== Demais decisões na implementação dos pilares == | == Demais decisões na implementação dos pilares == |
edições