Guia Completo da WT32-SC01 Plus (parte 2 de 6): O Primeiro Código (Hello World!)
No primeiro post desta série, conhecemos a placa WT32-SC01 Plus e suas principais características. Agora, é hora de colocar a mão na massa e fazer o que mais gostamos: escrever código e ver algo acontecer na tela! Neste tutorial, vamos configurar o ambiente de desenvolvimento no Arduino IDE e criar nosso primeiro programa: o clássico “Hello World!”. O objetivo aqui é garantir que a comunicação com o display esteja funcionando perfeitamente, sem a complexidade de bibliotecas de interface como a LVGL. Para isso, usaremos a biblioteca LovyanGFX. ...
Guia Completo da WT32-SC01 Plus (parte 1 de 6): Introdução e Primeiros Passos
Para quem desenvolve projetos com interfaces gráficas, a complexidade de integrar displays, controladores de toque e microcontroladores pode ser um grande desafio. A placa WT32-SC01 Plus surge como uma alternativa interessante para simplificar esse processo. Trata-se de uma placa de desenvolvimento que integra o processador ESP32-S3 a uma tela de 3.5 polegadas com toque capacitivo. Essa abordagem “tudo em um” é ideal para a prototipagem e desenvolvimento de interfaces de usuário (UI), como painéis de controle para automação, pequenos consoles interativos e outros dispositivos que exigem uma interação visual com o usuário. ...
Criando um Mapa Interativo com Pins no Flutter usando flutter_map
Adicionar mapas a um aplicativo Flutter é uma funcionalidade poderosa, mas muitos desenvolvedores pensam que a única opção é o Google Maps. Felizmente, existem alternativas robustas e de código aberto, como o pacote flutter_map, que utiliza os dados do OpenStreetMap e oferece uma flexibilidade incrível. Neste guia, vamos construir um aplicativo simples que exibe um mapa com pins (marcadores) customizados e interativos. É a base perfeita para qualquer projeto que precise de geolocalização, desde apps de entrega até guias turísticos. ...
Criando um App com Flutter e Firebase
O poder do Flutter está em sua capacidade de criar aplicações para múltiplas plataformas a partir de uma única base de código. Quando combinado com o Firebase, esse poder se estende para a criação de apps conectados à nuvem de forma rápida e eficiente. Neste guia, vamos demonstrar essa versatilidade construindo um aplicativo de cadastro de usuários (nome e CPF). Embora o foco do nosso exemplo seja a compilação para Windows, os mesmos princípios se aplicam para web, mobile e outras plataformas desktop, com pouquíssimas alterações. ...
Publicando seu Projeto Flutter na Web com Firebase Hosting
Levar um projeto Flutter para a web é uma excelente maneira de alcançar um público maior sem a necessidade de uma loja de aplicativos. Quando combinado com o Firebase Hosting, o processo se torna não apenas simples, mas também incrivelmente rápido e seguro, com um generoso plano gratuito. Neste guia, vamos percorrer o passo a passo para publicar um projeto Flutter já existente na web usando o Firebase Hosting. Pré-requisitos Antes de começar, garanta que você tenha: ...
Criando um Widget de Carta de Baralho Customizável em Flutter
Desenvolver jogos ou aplicativos que simulam jogos de tabuleiro sempre traz desafios interessantes de UI. Recentemente, enquanto criava uma versão do clássico jogo de cartas Blackjack em Flutter, me deparei com a necessidade de um componente de carta de baralho que fosse não apenas funcional, mas também visualmente agradável e, acima de tudo, reutilizável. Neste post, vou guiar você pelo processo de criação do PlayingCard, um widget que renderiza tanto a frente quanto o verso de uma carta, é totalmente customizável em tamanho e foi a peça central do meu jogo de Blackjack. ...
Barra de Progresso Personalizada para Flutter
Em muitos aplicativos, precisamos de uma forma visual para mostrar o progresso de uma tarefa, seja o carregamento de um arquivo, o avanço de um nível em um jogo ou os passos de um formulário. Recentemente, me deparei com essa necessidade e decidi criar meu próprio widget de barra de progresso no Flutter. Neste post, vou compartilhar o processo de criação de um CustomProgressBar, um widget reutilizável, animado e fácil de usar. E o melhor de tudo, o código está disponível em um repositório público para quem quiser usar! ...
Tutorial: Internacionalização de Aplicativos Flutter com 'flutter_localizations' e 'intl'
Este tutorial irá guiá-lo através do processo de adicionar suporte a múltiplos idiomas (internacionalização e localização) ao seu aplicativo Flutter, utilizando os pacotes flutter_localizations e intl para widgets do Material Design. 1. Introdução A internacionalização (i18n) é o processo de projetar e desenvolver um aplicativo para que ele possa ser adaptado a diferentes idiomas e regiões sem alterações de engenharia. A localização (l10n) é o processo de adaptar um aplicativo para um local ou mercado específico, adicionando componentes específicos do local e traduzindo o texto. ...
Adicionando Localização ao Blog
Estou entusiasmado em compartilhar que agora os posts do blog estão disponíveis tanto em português quanto em inglês! Recentemente, fiz uma atualização no Hugo para adicionar um sistema de localização ao meu blog. Embora ainda esteja trabalhando para resolver alguns problemas pendentes (como a funcionalidade limitada dos arquivos e da pesquisa, que por enquanto funcionam apenas na versão em inglês), estou empenhado em corrigi-los o mais breve possível. A inclusão do sistema de localização é um marco significativo para tornar o conteúdo do meu blog mais acessível e abrangente, tanto para a audiência nacional quanto à internacional. ...
Criando e usando um arquivo requirements.txt para instalar pacotes Python com o PIP
Introdução Se você é um desenvolvedor Python em busca de uma forma eficiente de gerenciar pacotes externos em seus projetos, veio ao lugar certo! Neste guia passo a passo, vou ensinar como criar e usar um arquivo requirements.txt, aproveitando o poderoso gerenciador de pacotes PIP. Essa é uma prática recomendada que permite compartilhar facilmente ambientes de desenvolvimento e garante a instalação adequada de todos os pacotes necessários. Então, vamos começar! ...