You are on the right path because if you're using laravel you will need a js frontend to get what you desire. You have the choice of vue or react, I personally prefer react.
Now you just have to create a front design using css, or css framework tailwind, you can check online for an already built one then inside the frontend component you have to program the functionality so when a button is clicked you will page will update with the data.
'''
// Frontend
getData() {
router.get('/products', data)
setData(data)
}
Button onClick={() => getData()}
'''
'''
// Backend
$data = Product::all();
Return Inertia::render('Page', ['data's => $data]);
'''