I need help with making an aiming system viewmodel

Hi there,I am currently working on a first person FPS game and i am fairly new i started with this project just to learn how viewmodels work and how CFrame works i know the basics but i dont know how to make an aiming system and i would appreciate some tips how i would begin on this

Here is my current script for putting the viewmodels in to place the switching part is just a bug fix that happends when you switch weapons
before hands thank you

ViewModel.Name = "ViewModel"
RunService.RenderStepped:Connect(function()
	if Player.Character.Humanoid.Health == 0 then
		if Camera:FindFirstChild("ViewModel") ~= nil then
			Camera.ViewModel:Destroy()
		end
	end

	if Camera:FindFirstChild("ViewModel") ~= nil then
		Camera.ViewModel:SetPrimaryPartCFrame(Camera.CFrame * CFrame.new(.025, -0.75, 3.5) * CFrame.Angles(0, 0, 0))
	end
	if switching then
		Camera.ViewModel:SetPrimaryPartCFrame(Camera.CFrame * CFrame.new(.025, 10000, 3.5) * CFrame.Angles(0, 0, 0))
	end
end)