Skip to header Skip to main navigation Skip to main content Skip to footer

Search form

Site branding

Home
What's up, home?

Main navigation

  • Home
  • Story mode
  • About
  • Features
  • Hardware list
  • Videos
  • GitHub (opens in new tab)
  • Daily AI generated stories (opens in new tab)

Part 139: Bad Apple but it's Zabbix

Breadcrumbs

Breadcrumb

  • Home
  • Part 139: Bad Apple but it's Zabbix

Main page content

By whatsuphome | 6:34 PM EET, Wed February 18, 2026

TL;DR

I let OpenAI Codex build a custom Zabbix widget that plays Bad Apple at 30 fps, then expanded it into a zoomable, rotatable 3D cube animation. Yes, the meme lives in your monitoring dashboard now.
What's up, home? part 139 cover image

Bad Apple animation is like Doom, it runs on everything and everywhere. It's been ported to C64, Amiga, Atari ST. It's been running inside Minecraft in few different ways. It's been ported to physical world. 

Let's vibe code

The other day I installed OpenAI's Codex to my personal MacBook. Little did I know what would happen if I would prompt it to create a custom Zabbix 7.0 widget which brings Bad Apple meme to life on Zabbix. 

Codex

Few conversations later, I had an actually working widget! 

Zabbix modules list

Yes, I had done some preliminary work -- mostly downloaded the animation and extracted it to individual frames by using ffmpeg.

As I had lowered the resolution of those individual frames very dramatically, this was not so cool to watch even though already participates to endless pool of Bad Apples out there. So, I vibe coded Codex to expand this little widget a bit further: instead of 2D animation, please create a 3D cube in X3D (successor of really old VRML) format and make the cube freely zoomable and rotatable.

The end result

This is already a bit cooler! To make this little demo more interesting to watch, I recorded my screen for the complete length of the Bad Apple animation and later added the music with good old iMovie. Enjoy Zabbix playing Bad Apple animation 30 frames per second inside a custom widget purely made with vibe coding. The widget loads the individual frames from a separate directory one frame at a time so this is some light warmup gymnastics for my nginx too.

whatsuphome
zabbix
bad apple
custom widget
  • Allowed HTML tags: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.
Content blocks
I let OpenAI Codex build a custom Zabbix widget that plays Bad Apple at 30 fps, then expanded it into a zoomable, rotatable 3D cube animation. Yes, the meme lives in your monitoring dashboard now.

Search

Who am I?

  • Janne Pikkarainen from Finland 🇫🇮
  • Began with computers in 1986 with C64
  • Doing IT for living since 1999
  • Principal Site Reliability Engineer at Forcepoint
  • A Zabbix Summit speaker every year since 2022
  • Walking, talking Zabbix commercial

Support my project

Buy me a coffee 

Footer menu

  • Contact

What's up, home? | Janne Pikkarainen | contact(at)whatsuphome.fi | 2022 - 2026

Developed and Designed by Janne Pikkarainen