Max R.

DailyWall

The Idea

First world problems - I get bored of my wallpapers every other week, and finding a new wallpaper that I like may take quite a bit of time. At some point I thought "Hey, what if I made a thing that would change my wallpaper every day?". I told about this idea to a few friends and they were pretty excited about it as well. So I decided to build the app.

Initial version

DailyWall v1 was an Electron app. I know, ew. But it was what I was able to do at the time.

It was slow and bloated, but it did the job. I used Next.js inside of an Electron app, I wired up PayPal for Pro version purchases and set up a JavaScript timer for checking "are we there yet" every minute in Electron's main process.

Needless to say, I wasn't particularly proud of it, so a year and some later came... drum roll...

The Swift Rewrite

The idea was the same - an app that changes a wallpaper randomly every morning. But doesn't suck.

I started completely from scratch using the newly released SwiftUI framework. Instead of a hacky timer, the app now used system scheduler. Instead of CSS hacks - sexy native animations. I also adde Paddle instead of PayPal for payment processing, expanded a library of photos, added selectable categories, and even made an iOS version!

One change that had to be made was introducing The Cloud™, since I wanted to do neat things like wallpaper match and settings sync between devices. But it's minimal, no user data is tracked unnecessarily and it's totally worth it.

The Infamous Tweet

This rewrite's most unexpected outcome was the tweet, that ended up being my biggest ever:

It's all true though

Conclusion

Check out the app! Also feel free to check my other projects, you might find them interesting as well!