In this article, I'll review the concept of recursion, and build a Vue.js composable utilizing recursion and the requestAnimationFrame API. This composable will execute a callback function repeatedly for a specified duration, while allowing to pause, resume, and reset the function's execution at any point. By the end of this article, you'll have a better understanding of how recursion works, and a useRaf composable that will come in handy in a future article.