Aprender
Introdução
O que é o Nimbly, o que significa full-stack atômico e como um projeto é organizado.
O Nimbly é um sistema de design atômico full-stack para produtos digitais sob medida, de sites focados a portais, painéis e aplicações de negócio. Ele cobre a aplicação inteira: páginas e templates, dados e sua administração, a API, usuários e permissões, mídia, jobs agendados e agentes.
O que significa full-stack atômico
Atômico significa granular. Uma aplicação Nimbly é feita de pequenos blocos de construção, cada um com uma responsabilidade: um template gera markup, uma biblioteca contém lógica de negócio, um recurso define um tipo de dado. Os blocos se combinam em funcionalidades, e as funcionalidades no produto.
Isso vale para toda a stack, não só para a interface. Uma funcionalidade de projetos é um recurso de projetos, a lógica que seleciona registros, um template de cartão e a página que os mostra. Cada parte pode ser reutilizada, substituída ou estendida por conta própria.
O nível de granularidade é você quem decide. Uma página pode ser um único template com HTML simples, ou uma composição de muitos pequenos. O Nimbly não traz uma biblioteca de componentes prontos: cada projeto compõe sua própria interface, e assim carrega exatamente a estrutura e o código de que precisa.
Comece pela página ou pelos dados
Você pode trabalhar de cima para baixo:
- Escreva uma página como template, com seu próprio HTML e suas classes.
- Marque textos como editáveis, para que os editores os alterem na própria página.
- Quando algo se repete, como projetos, defina-o como recurso num único arquivo JSON. A visão geral no admin, os formulários para adicionar e editar, a API, as permissões e o histórico vêm com essa definição.
- Selecione os registros na página e repita um template de cartão para cada um.
Ou de baixo para cima: defina primeiro os dados e construa as páginas sobre eles. Os dois caminhos levam à mesma estrutura.
Cada rota é uma tela em branco
Uma rota faz o que você quiser. O Nimbly não acrescenta layout, invólucro ou formato próprio:
- Termine o template com
[#html#]e você tem a página padrão, com o head, os assets e a edição na página para editores. - Escreva seu próprio documento HTML e você tem exatamente isso. Veja Seu próprio HTML.
- Responda com JSON, XML, texto simples, CSV, um arquivo ou um PDF. Veja O que uma rota devolve.
O Nimbly vem com Tailwind CSS, DaisyUI e Alpine.js configurados, e o admin é construído com eles. Nas suas próprias rotas eles são um padrão, não uma obrigação: use React, Vue, JavaScript puro ou outro conjunto de ferramentas numa rota ou no site inteiro. Veja Stack de frontend.
Sua aplicação e o framework
Um projeto Nimbly tem duas partes. core/ é o framework, compartilhado por toda aplicação Nimbly. ext/ é a sua aplicação: rotas, templates, bibliotecas, recursos, configuração e tema.
Todo template, biblioteca, rota e arquivo estático é procurado primeiro em ext/, depois em core/. Um arquivo com o mesmo nome em ext/ substitui a versão do core, e arquivos novos ficam ao lado. O próprio core continua intocado, então as atualizações continuam chegando.
Código, conteúdo e dados são arquivos simples. Os registros ficam como arquivos JSON no repositório da aplicação, então o conteúdo é versionado junto com o código e um clone traz o site inteiro; veja Dados como arquivos. Uma requisição carrega só os blocos que sua rota usa.
Menos stack, mais produto
O Nimbly deixa de fora o servidor de banco de dados, o ORM e as migrações. Os registros são arquivos JSON no Git, ao lado do código que os usa, e uma definição de recurso basta para ter sua administração, API e permissões. Isso elimina uma camada inteira de complexidade desnecessária: você tem a rapidez da administração gerada junto com a transparência, o controle de versão e a limpeza de um código full-stack próprio. Serve para agências, desenvolvedores independentes e desenvolvimento com IA. Veja Dados como arquivos.