


Os NFTs são ativos digitais exclusivos registrados na blockchain, identificados por um URI que referencia os metadados e elementos visuais correspondentes. Esses URIs podem ser apresentados como links HTTP para conteúdos hospedados, endereços IPFS (baseados em hash), Arweave para hospedagem incentivada, ou data URIs que incorporam todas as informações diretamente na própria referência. A utilização de data URI vem ganhando espaço, já que permite que criadores armazenem o conteúdo do NFT integralmente on-chain, garantindo sua permanência sem depender de infraestrutura externa. O formato SVG tornou-se o padrão para visuais on-chain, graças ao suporte nativo dos navegadores e à necessidade de otimização de armazenamento em smart contracts, tornando os NFTs SVG do Ethereum uma solução eficiente e duradoura para ativos digitais permanentes.
No Ethereum, o envio de código para a rede exige pagamento de taxas de gas. Operações que alteram o estado requerem transações e custos financeiros, enquanto ações apenas de leitura não geram despesas. Ao visualizar NFTs SVG on-chain, o smart contract gera as imagens dinamicamente via tokenURI(), que executa código conforme o estado atual, sem modificá-lo e, assim, sem custo de gas. Esse modelo de renderização sob demanda é fundamental para projetos SVG on-chain. Exemplos como Neolastics seguem essa lógica: IDs únicos atribuídos durante a mintagem alimentam funções generativas que produzem SVGs consistentes, combinando reprodutibilidade com criação dinâmica. O desafio técnico consiste em otimizar o código dentro dos limites das transações, através de programação eficiente em gas — prática conhecida como "gas golf".
Avastars foi pioneiro na abordagem SVG on-chain para NFTs. Apesar de inicialmente depender de um servidor HTTP de metadados, o SVG completo e os metadados permanecem reprodutíveis na blockchain via getAvastarMetadata() e pelo contrato AvastarsTeleporter com renderAvastar(). Essa redundância garante que o conteúdo seja preservado mesmo se os servidores externos ficarem indisponíveis. O processo de geração das imagens SVG ocorre pela concatenação dos diferentes traços originalmente inseridos no smart contract como componentes SVG, permitindo reconstrução total da arte diretamente a partir dos dados on-chain.
Squiggly adotou arquitetura híbrida semelhante à Avastars, mantendo um servidor HTTP de metadados e implementando reprodução on-chain via getIdtoSVG(). Diferente da Avastars, que armazenava traços individualmente, Squiggly fez o upload do SVG completo no deployment do contrato. O processo de renderização utiliza um seed para gerar gradientes e curvas dinâmicas, criando visuais exclusivos para cada token. Squiggly introduziu ainda o campo de metadados não padrão "image_data", solução adotada por grandes plataformas de NFT para viabilizar a renderização por data URI antes da adoção generalizada nos marketplaces.
Neolastics replica a arquitetura da Squiggly, com servidores de metadados externos e reprodutibilidade da arte on-chain. A função generateSVGofTokenById() possibilita recriação das imagens como SVG direto na blockchain, garantindo resiliência contra eventuais falhas dos servidores de metadados. Tal como Squiggly, os componentes SVG são enviados no deployment do contrato e recombinados conforme parâmetros gerados por seed. Essa alternativa equilibra a experiência do usuário oferecida por servidores convencionais com a segurança da reprodutibilidade on-chain total.
TinyBoxes diferencia-se por incorporar elementos SVG animados, indo além da geração de imagens estáticas. A função tokenArt() realiza renderização personalizada, mantendo a arquitetura de servidor externo de metadados. De modo inovador, TinyBoxes insere metadados de traços como tags HTML dentro das imagens SVG, ao invés de armazenar metadados separados on-chain. Os elementos animados são gerados a partir de seeds aleatórios, com complexidade superior à de projetos convencionais. Para contornar as restrições do Solidity na manipulação de strings, TinyBoxes utiliza SVG.sol, camada de abstração que centraliza a lógica de renderização e geração de animações.
Mandalas representa um avanço arquitetural ao eliminar completamente servidores HTTP de metadados, armazenando JSON completo e imagens SVG codificadas em base64 diretamente em data URIs. Essa estratégia exigiu codificação base64 para garantir integridade dos caracteres especiais, elevando o custo de gas em relação ao SVG puro. A codificação assegura compatibilidade com navegadores e permite a renderização integral da obra via decodificação do data URI. Mandalas emprega um sistema próprio que pinta pixels codificados em base64 sobre estruturas de mandala, criando arte geométrica de geração procedural.
Os NFTs UniSwap V3 apresentam animações avançadas e armazenamento 100% on-chain, utilizando codificação base64 completa. A solução implementa codificação aninhada: o data URI traz metadados JSON em base64, que por sua vez incorporam um SVG também codificado em base64. Essa abordagem facilitou o suporte amplo de data URIs nas principais marketplaces de NFT. A lógica de renderização é delegada a contratos separados (NFTDescriptor.sol e NFTSVG.sol), superando limitações do Solidity em manipulação de strings. A arte utiliza elementos derivados das posições financeiras subjacentes, evidenciando o potencial do SVG on-chain para representar estados dinâmicos da blockchain.
Anchor Certificates adota arquitetura totalmente on-chain, com SVG e metadados armazenados diretamente em data URIs codificados em base64. Componentes SVG são extraídos em funções separadas para contornar limitações de callstack do Solidity, permitindo gerenciamento eficiente das variáveis entre etapas computacionais. Esse design modular viabiliza geração de obras complexas dentro dos limites do blockchain, mantendo disponibilidade total on-chain.
Blitmap segue arquitetura clássica com armazenamento externo de imagens e metadados, mas oferece reprodutibilidade on-chain via funções de renderização customizadas. A inovação está na codificação da obra como 268 bytes de dados de pixel pelas funções mintOriginal() ou mintVariant, reconstruindo as imagens como conjuntos de retângulos SVG. Cada byte representa a informação de um pixel, traduzida em elementos rect no SVG, comprimindo dados para armazenamento eficiente e permitindo recriação completa on-chain.
Nouns integra técnicas de diversos projetos: armazena metadados e SVG on-chain com base64, utiliza contrato descriptor próprio (como UniSwap V3) e adota codificação por traços, similar a Avastars e Blitmap. O diferencial está na otimização ao agrupar regiões de cores semelhantes em um único retângulo SVG, reduzindo o tamanho do arquivo sem perder qualidade visual. Essa solução demonstra a constante evolução na codificação eficiente de arte on-chain.
solSeedlings segue abordagem híbrida, priorizando reprodutibilidade em vez de pureza técnica. Apesar de conter caracteres especiais pouco adequados para data URIs, a coleção mantém componentes on-chain suficientes para garantir reprodução da arte. A renderização emprega aleatoriedade baseada em seed com implementações customizadas, destacando a diversidade de soluções dentro do ecossistema SVG on-chain.
Os NFTs SVG on-chain incorporam diversas arquiteturas, equilibrando restrições técnicas, eficiência de gas e permanência. Da concatenação de traços do Avastars à implementação integral de data URI nos Mandalas, passando pela codificação de pixels do Blitmap até o agrupamento otimizado de retângulos do Nouns, os projetos mostram avanço contínuo em armazenamento e renderização de arte na blockchain. Embora o conceito de "totalmente on-chain" seja discutido, a experimentação coletiva resultou em arte digital resiliente e sofisticada, aproveitando a estrutura imutável do Ethereum. SVG tornou-se referência para criação digital permanente no Ethereum, e novos formatos e métodos indicam que o cenário da arte on-chain continuará se transformando. O segmento representa não só avanço técnico, mas também potencial criativo, onde os limites impostos pela blockchain estimulam soluções inovadoras e a otimização de gas transforma-se em desafio de engenharia e expressão artística.
É possível armazenar dados SVG codificados diretamente on-chain nos smart contracts, em vez de referenciar recursos externos. A função tokenURI retorna JSON codificado com dados SVG que podem ser renderizados em navegadores. Essa solução garante integridade dos dados e viabiliza NFTs SVG dinâmicos sem dependência de fontes externas.
SVG possibilita a criação de arte NFT on-chain única, ao codificar elementos visuais diretamente na blockchain. Arquivos SVG são incluídos nos metadados do NFT, permitindo geração programável e escalável de arte digital por meio de composição algorítmica dos componentes visuais.
Para evitar ataques XSS, assegure-se de que os arquivos SVG estejam livres de códigos JavaScript maliciosos que possam comprometer wallets dos usuários. Valide todos os arquivos SVG, sanitize metadados e utilize bibliotecas seguras de renderização para prevenir vulnerabilidades de injeção.





