Skip to content
All projects

Product

Ferrio

Every day carries an odd little holiday, and Ferrio tells you which. Android since 2014, iOS in SwiftUI, and the web - all fed by one API. The holidays live on a server rather than inside the app, so a correction or a new entry reaches everybody without waiting for a store review.

AndroidiOSSwiftUIWeb

Where it started

A speaker from the Kraków Technology Park visited my school in 2014 and made an argument I have not stopped believing since: a first project does not have to impress anybody, it only has to exist. His examples were a Facebook page that posted the same photograph every day, and an Android app whose single button answered the question “has the world ended yet?” with “no”.

That was the permission I needed. We had Android in our specialisation classes, so I had somewhere to start, and the Unusual Holiday Calendar shipped that year. It has been in the store ever since.

What it does

Every day carries at least one unusual holiday, and most days carry several. The app shows you today’s, lets you browse forward and back, and lets you share the better ones. February 30th is in there too - the International Day of Days That Don’t Exist - which is the kind of detail that tells you what sort of project this is.

The holidays are not compiled into the app. They come from a server, so a new holiday, a correction or a better description reaches everybody without waiting for a store review. That decision is the reason an app written in 2014 is still worth opening.

Growing past Android

In 2023 the iOS version arrived, written in SwiftUI. Learning a second mobile platform on a codebase I already understood turned out to be the easiest way to learn it at all - the problem was solved, so only the platform was new.

Then came the rebrand. The Unusual Holiday Calendar became Ferrio, and the web app joined the two phone builds. The same data now reaches you wherever you happen to be, which was always the point.

The API is public enough to build on, and I have twice. Ferrio has a Discord bot of its own, and Torphes - a general utility bot that predates it - asks the same API when somebody wants to know what today is.

Modules

  • ferrio-web

    The web app, in Symfony, where the holidays are browsed by day and by month.

  • ferrio-android

    The Android app, and the one the whole thing started as in 2014.

  • ferrio-ios

    The iOS build, written in SwiftUI in 2023 once the Android version had proved the idea.

  • ferrio-api

    The content delivery network the apps read from, which is why a new holiday does not need a new release.

  • ads-ferrio-bot

    A Discord bot that answers with the day's holiday, straight from the API.