Improving the accessibility of our iOS catalog

Working on a big project means handling all sorts of issues, but also, having the opportunity to impact a large and diverse number of people. Here on iFood we have an environment thriving on amazing projects, incredible ideas, and the space to create and test new features in order to make the best product possible.

Most of the time, we focus on how we can create layouts in order to make the user experience easy, understandable, and also pleasant. But, have you ever wondered, who can really use your app?

We want to be able to reach our design expectations…


Photo by Brooke Lark on Unsplash

Unit testing view's actions in Swift without a host app

If you love unit tests (either by genuinely liking them or by understanding and fearing the issues that come with the lack of tests) you may always get on a mental deadlock when thinking about testing your views.

What is testing a view? Do snapshot tests count as testing a view? Do I need to change the visibility of my components so I can better test them? We will not be answering these questions here today. …


Photo by Glenn Carstens-Peters on Unsplash

Um artigo com dicas sobre escrever artigos!

Cada escritor tem sua forma de contar uma história, ou sua forma de transmitir uma ideia. Todo texto traz alguma informação, alguma opinião e algum contexto por trás. E não existe uma forma correta ou errada — apenas maneiras diferentes de se comunicar.

O que acontece é que expressões, referências, entonações, linguagens… tudo isso cria um tom no seu texto e transparece certas coisas para os leitores.

Então aqui hoje vou contar alguns dos pontos que eu considero importantes na hora de escrever um texto, em especial pra ser publicado na internet, algumas dicas de como transmitir suas ideias, e…


Improve unit testing for your icons in iOS

Photo by Harpal Singh on Unsplash

This is a follow up on: Where are your icons?, using an icon font on iOS

Hi there! Since you are already here, let's consider you have an iOS project using an icon font, which provides you with an easy library for all your icon needs. This is a very plausible approach to handle a large number of icons and create a standard source to work across multiple platforms.

But working with an icon font on a mobile project can bring some troubles along the way, and you may need some tips and tricks. So, what will we be doing…


Base Photo by Johnny Brown on Unsplash

Creating an animated Splash Screen for your iOS app using Lottie

Splash screens are the windows to the app's souls. It's the first thing any user will see when they open your app (and we all know that the first impression is really important).

For a very long time, our app had just a plain boring splash with a static image (with veeeeeeery little movement). Later, we created a second version of the Splash, which we improved with a pulsing logo, it brought a much bigger appeal to the users and it was way nicer to watch.

But… I thought that it was not enough.

What if we could bring a…


Photo by Balázs Kétyi on Unsplash

Using an icon font on iOS

If you work on a big mobile project you are facing a lot of issues to solve on a daily basis. And one of these issues is to deal with is the size of your app, and how you manage your assets.

Make a big app, with inumerous flows and you'll probably end up with a bunch of assets for icons, illustrations, fonts, and that marketing banner to promote something that for some weird reason is embed on the app.

While making some changes on our project, and make some updates with the design team, we decided to take a…


some tips for you to start Fluttering too!

I've had a game available on the App Store for quite a while now: InterAção (Portuguese for InterAction), it's a party game to play mimic with friends.

By far, the biggest request I've had on the game was: Make an Android version, please! And I decided it was time to do so. It was a nice opportunity to learn something and gather some new skills.

I'm not familiar with native android development, but I was looking forward to studying something new for a while and I had already seen a few things about flutter so I decided to give it…


Electric transmission tower — Photo by Alina Grubnyak on Unsplash

Using Mirror to test references in Swift

Have you ever had a bug that the solution was just setting a delegate? Or an entire feature that broke because a single reference was not being set correctly? This is an everyday issue of everybody, but we could prevent thesm with tests covering our references. But… how?

If you work with Swift in larger projects, we are probably talking about apps written with architectures a little more complex than the old MVC. And your architecture could be any fancy group of letters like: MVVM, VIP, VIPER, MVMC, etc.

More complex architectures are subjected to more complex bugs. Here, on…


Thanks to Pankaj Patel for sharing this image work on Unsplash.

Making swift enums safe for incremental changes on your APIs

Swift enums are simple, useful and easy to read. But, long story short: Enums are terrible at being decoded.

Even though they give a lot of nice capabilities to your code, decoding enums is just not as smooth and transparent as you'd expect.

The idea of this article is to show some of these issues and give a solution for preventing them while still using enums for decoding values in swift.

Using enums for decoding stuff

Consider we have this scenario: an API that gives you a user model with name and their favorite color. We'll create a struct to represent it using a String


Apple Park — cena de encerramento do WWDC 2020

Um primeiro olhar na maior conferência de desenvolvimento da Apple

A WWDC, uma das maiores conferências de desenvolvedores do mundo todo, é feita anualmente pela Apple para anunciar suas novidades a nível de desenvolvimento e novos sistemas operacionais.

Por conta da situação toda da pandemia de coronavírus, a conferência será realizada completamente remota, sendo que hoje aconteceu a primeira e mais esperada apresentação onde são divulgadas todas as novidades.

Aqui neste artigo, concentramos uma primeira visão da apresentação com algumas opiniões e highlights do conteúdo que foi apresentado.

Uma introdução importante

No começo da apresentação, Tim Cook, atual CEO da Apple, falou de temas importantes e recentes. …

Giovani Pereira

iOS Developer @ iFood

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store