I want to make a viewmodel that replicates the players skin onto the viewmodel arms kind of like this

if you can see my players arms are replicated onto the viewmodel. How can I achieve this? Also I don’t want anything like your arms are visible while holding a tool I want a custom viewmodel that does the thing I want to achieve.
you’ll need a humanoid to render the rig and after that, you can load the humanoid description from the
player character’s humanoid and apply it to viewmodel
-- this is just example, copy and pasting it wont work
local char = player.Character
local viewmodel = current_cam.yourviewmodel
local humanoid: Humanoid = char.Humanoid
local desc = humanoid:GetAppliedDescription() --get the current applied items from avatar
-- note that applying it directly won't remove accessories so you'll have to hide those with for loops after applying the description, not before it's applied
viewmodel.Humanoid:ApplyDescription(desc)