In the realm of first-world problems, your cheap wall clock doesn’t keep time, so you have to keep setting it. The answer? Of course, you connect it to NTP and synchronize the clock with an atomic time source. If you are familiar with how these generic quartz clock movements work, you can probably guess the first step is to gut the movement, leaving only the drive motor.
The motor is somewhat like a stepper motor. The ESP8266 processor can easily control the clock hands by sending pulses to the motor. The rest is simple network access and control. If the network time is ahead, the CPU gooses the clock a little. If it is behind, the CPU stalls the clock until it catches up.
If you’ve ever done a project like this, you know there is one major problem. At some point, the processor needs to know where the hands are now. On initial setup, you can force the issue. However, if the power goes out, it won’t work well. If the power goes out at, say, 8 AM and turns back on at 9 AM, the CPU will be happy to correct the time to agree with the NTP time. The problem is that the processor has no idea that the hands started at 8 AM, so the time will be off.
To combat this problem, the design uses an EERAM chip to store the current time. In the event of a power failure, the CPU knows where its hands are and can adjust accordingly.
While you usually use these movements to keep time, once you can control them, you can do any crazy thing you like. Or, even anything as artistic as you can dream up.

Nonsense.
Why make an independently running clock dependent on variable factors?
A stable connection to servers on the internet is not a given, it is not absolutely no guarantee of a reliable time display.
For pure joy of getting knowledge by solving nonexistent problem in convoluted way:)
An advantage of cheap wall clocks is that they run on batteries.
The major problem I see here is a USB cable dangling from this clock.
With some more design effort, the author could have fixed this. There’s plenty of room for batteries.
Batteries to run out 12 times per year…
Let’s face it, the clock that is was before it was modded, was pretty good enough.
But where’s the fun in that?
Clock projects are never about time keeping, they are an excuse for a finished project to be on constant display. Which is one of the reasons I love projects like this.
One way would be to have a low power counter chip count the clock ticks from the original electronics. The ESP can then wake once a day, compare the count and skip or add a few ticks as needed.
4 US based time zones.
DCF77 radio clock runs on batteries and is “atomic accurate”
DCF77: https://en.wikipedia.org/wiki/DCF77
Radio clock: https://en.wikipedia.org/wiki/Radio_clock
Not expensive: https://www.amazon.de/-/en/Analogue-Radio-Controlled-Ticking-Function-Backlight/dp/B07QFFYPJ1