Since readr version 2.0.0 you can read all csv files into a single data frame directly, the code would be something like this:
list_of_files <- list.files(path = "path/to/your/files",
recursive = TRUE,
pattern = "\\.csv$",
full.names = TRUE)
df <- readr::read_csv(list_of_files, id = "file_name")