Public Relations

I’ve been wanting to make my website a bit more “alive” for a while, and I finally had the time to do something about it.


App’s Prices

For the longest time, I didn’t show the prices for my apps on my website (crazy, I know), simply because I didn’t feel like going into the HTML source, updating the static price, and re-uploading the page every time I had a sale.

Now, I have a PHP script that takes care of it for me. It can load prices for different localities using the App Store API, or from Paddle. I currently just get them from Apple right now, because my apps’ prices are the same on the App Stores and my website. The results are cached for 6 hours so I don’t have to query the API for every page load. For time-sensitive sales, I can easily discard the cache and have the page (and thus, prices) reload for everyone instantly.

Prices are now shown on the main website (see above), and on each app’s webpage:


“Current Version” Indicator, Release Notes

For ScreenFloat 2.0, I built an entire API and database with PHP and MySQL for the release notes I show in-app:

It allows me to get all sorts of information about any release, the obvious ones being version, release date and download file size.
This powers my in-app update mechanisms, the in-app release notes you can see above, and now the “current version” of apps on my website (see below), along with a web version of my apps’ release notes.

A click onto the version brings you to the web release notes. I tried to replicate the in-app release notes as closely as possible, with image- and video previews of features, etc. You can switch between English and German, rich- and plain text, and browse through the release history.


Highlighted Blog Posts

Though I’ve always linked to my blog from my website, I thought it would be neat to feature the newest blog post on the main page and the latest app-related post on the app’s webpage. I hope this is more enticing to click than a simple “Blog” link.

This uses the basic WordPress API. It looks for posts with specific tags or within specific categories, published within the last 2 months. If there aren’t any blog posts with that criteria, nothing is shown. I thought that better than showing old, outdated posts. I don’t want to give off “deserted” vibes.


Friends Page

I have a new Friends page where I highlight a few long-time friends of Eternal Storms Software. I still need to find a way to include that into the main website better.


Auto-Applying Discount Codes on my Web Store

Probably a no-brainer for anyone else, but I coded my web store myself, and only for Black Friday 2025 had the idea of auto-applying discount codes. That way, everyone gets the benefit of a discount when a sale’s going on, even if they don’t know about it.
The way it works is, I have a specific naming scheme for site-wide and app-specific discount codes, and the web store looks for them and applies them automatically.


Tip Jar

Recently, I’ve been implementing Tip Jars into my apps, for anyone who’d like to completely voluntary further support my work, beyond the app’s one-time purchase price (I don’t offer subscriptions).

Tip Jar in Yoink for Mac

Since I implemented it for both the App Store and via Paddle for the direct-purchase versions of my apps, I figured I’d implement a small web version of the latter, too.
I’m linking to it from my blog, but I’m still undecided about adding it to the main page. Probably going to leave it out.


Things Still In the Works

For now, there are two things I still haven’t gotten around to including.

Dynamic App Reviews

I do include reviews from the App Stores on the main and app pages, but they’re static. I’d like it to be a bit more dynamic, where I’d show random 4- and 5-star reviews. Apple offers APIs for that, so it shouldn’t be too much of a hassle.

A “Sources” Page

I’d like to have a page up indicating official sources for my apps: my website, the App Store, Bundlehunt (on occasion), MacUpdate, etc.
Basically a single source of truth for figuring out if a website offering a download of or licenses for my apps is official and legit.


Now back to work. Since I’m not vibe-coding, my apps don’t develop themselves!


Read more


For this year’s Black Friday sale I held between November 27th and December 1st 2025, I pledged 30% of proceeds from app sales made on the Mac App Store and directly on my website to the Austrian St. Anna’s Children’s Cancer Research Institute.

The sale was a great success:
Because of your generous participation in the sale, we raised €766,43 for this cause.

❤️ From the bottom of my heart, thank you ❤️

Because it’s a larger sum than I had anticipated, I decided to:
1) Donate €100 to the St. Anna Children’s Hospital itself, for helping provide the best possible care for patients and their families. Amount already donated; proof available upon request
2) Donate €383,43 to the St. Anna Children’s Cancer Research Institute now. Amount already donated; proof available upon request
3) Donate the remaining amount (€283) to the St. Anna Children’s Cancer Research Institute in the new year. I’ll update this post once I’ve donated the amount

⚡️ Thank you again for helping fight cancer. And I do hope you’ll enjoy my apps!

💌 Contact & Connect


Read more

macOS 15 Sequoia introduced a new, annoying screen capture permission reminder that has brought on a lot of push-back from developers (myself included).

Now, Ricci Adams has found a way to virtually stop the nagging for specific apps. (I found out about this from Jeff Johnson’s Desolation of Blog blog).

First things first: Please use your own discretion when trying this. Consider if you’re savvy enough to work with the Terminal, and if you really want to remove the permission reminder for an app.

Apparently, there is a TCC (Transparency, Consent and Control) – protected file that keeps track of when to show the next nag screen for specific screen capturing apps, located at

~/Library/Group Containers/group.com.apple.replayd/ScreenCaptureApprovals.plist

Using Terminal (which first needs to be granted Full Disk Access in System Settings > Privacy & Security), you can set that date far into the future so you won’t ever see the nag again.

For example, I wanted to make absolutely sure it never bothers me again for my own app ScreenFloat, so I just set it to my retirement date: January 1st, 4321.

defaults write ~/Library/Group\ Containers/group.com.apple.replayd/ScreenCaptureApprovals.plist "/Applications/ScreenFloat.app/Contents/MacOS/ScreenFloat/" -date "4321-01-01 00:00:00 +0000"

Restart your Mac (or log out and back in) so it accepts the new defaults, and you’re all set.

Read more

Long story short, I done goofed: A bug snuck into my trial time code and ended it early for some users.
If you experienced this, please feel free to re-download the trial from the website (direct download here) for another, full 28-day trial.
My apologies for the inconvenience!

Links

ScreenFloat Website (+free, 28-day trial)
Get to know ScreenFloat 2 8-part Blog Post Series
ScreenFloat 2 Usage Tips

Purchase ScreenFloat on the Mac App Store
Purchase the Eternal Storms Software Productivity Bundle on the Mac App Store (includes ScreenFloat, Yoink and Transloader at ~25% off)

Read more