Hello there

Welcome to my blog. Here you will find helpful content on programming and tech.

Creating a Customizable Playing Card Widget in Flutter

Developing games or apps that simulate board games always brings interesting UI challenges. Recently, while creating a version of the classic card game Blackjack in Flutter, I found myself needing a playing card component that was not only functional but also visually appealing and, above all, reusable. In this post, I’ll guide you through the process of creating PlayingCard, a widget that renders both the front and back of a card, is fully customizable in size, and was the centerpiece of my Blackjack game. ...

July 22, 2025 · 6 min

Flutter Custom Progress Bar

In many applications, we need a visual way to show the progress of a task, whether it’s loading a file, advancing a level in a game, or the steps in a form. I recently came across this need and decided to create my own progress bar widget in Flutter. In this post, I’ll share the process of creating a CustomProgressBar, a reusable, animated, and easy-to-use widget. And best of all, the code is available in a public repository for anyone to use! ...

July 21, 2025 · 3 min

Tutorial: Flutter App Internationalization with 'flutter_localizations' and 'intl'

This tutorial will guide you through the process of adding multi-language support (internationalization and localization) to your Flutter application, using the flutter_localizations and intl packages for Material Design widgets. 1. Introduction Internationalization (i18n) is the process of designing and developing an application so that it can be adapted to different languages and regions without engineering changes. Localization (l10n) is the process of adapting an application for a specific locale or market by adding locale-specific components and translating text. ...

June 30, 2025 · 7 min

Adding Localization to the Blog

I’m thrilled to share that the blog posts are now available in both Portuguese and English! I recently updated Hugo to incorporate a localization system into my blog. While I’m still working on resolving a few remaining issues (such as limited functionality of files and search, currently only working in the English version of the blog), I’m committed to fixing them as soon as possible. The addition of the localization system is a significant milestone in making my blog content more accessible and comprehensive for both national and international audiences. ...

May 28, 2023 · 1 min

Creating and using a requirements.txt file to install Python Packages with PIP

Introduction If you’re a Python developer looking to efficiently manage external packages in your projects, you’ve come to the right place! In this step-by-step guide, I’ll teach you how to create and use a requirements.txt file, leveraging the powerful package manager PIP. This is a recommended practice that allows for easy sharing of development environments and ensures the proper installation of all required packages. So, let’s get started! Step 1: Creating the requirements.txt file To begin, open your terminal or command prompt and navigate to your project directory. Then, enter the following command to create the requirements.txt file: ...

May 14, 2023 · 3 min

How to Remove the Flutter Debug Banner in Just One Step

Changelog: Code updated to Flutter 3.10. Every Flutter application comes in debug mode by default, which means that the debug banner is shown. It serves only to remind us that the application is in debug mode, and when you switch to release mode, this banner will not be present. But this banner can be annoying to some people, like me, during the development of the app. To remove it, simply set the value of the debugShowCheckedModeBanner property to false in your MaterialApp: ...

May 7, 2023 · (updated May 28, 2023) · 1 min

Virtual Environments in Python

Virtual environments Python has become one of the most popular programming languages in the world, thanks to its simplicity, versatility, and powerful libraries. One of the key features that make Python such a great language to work with is its ability to create virtual environments. Virtual environments are isolated Python environments that allow you to install and manage packages and dependencies without affecting other projects or your system’s global Python installation. ...

May 1, 2023 · 3 min

A Quick and Free Way to Generate Favicons: favicon.io

Wondering about how to generate favicons for various formats for my website, I noticed on the FAQs of the theme I’m using (Hugo PaperMod FAQs) that they recommended an online service to automatically generate the necessary favicons: favicon.io. It’s a free service that generates favicons based on an image, text, or emoji. Very interesting and saves a bit of work.

May 1, 2023 · 1 min

The Beginning

This is the beginning of my blog (once again). I hope this time it survives. I’m developing with Hugo and hosting it on GitHub Pages.

April 30, 2023 · 1 min