How to use spring module to impulse a viewmodel

I am trying to use quenty’s spring module to create a procedural firing animation, however whenever I impulse the spring it just throws the viewmodel into the void. I’m not very experienced with springs so honestly I don’t know whats going on

spring impulse code

function Viewmodel:Impulse(velocity: number)
    self._Spring.Position = self._PrimaryPart.Position
    self._Spring.Damper = 0.5
    self._Spring.Speed = 20

    self._PrimaryPart.Position *= self._Spring.Position
    self._Spring:Impulse(velocity)
end

And the code that calls it

while true do
    task.wait(2)
    viewmodel:Impulse(Vector3.new(0, 0, 1))
    print(viewmodel._Spring.Position)
end