https://www.somethingsblog.com/2024/10/15/rip-promise-chaining-async-await-takes-over/