How to add Jumping to my First Person Character Controller,

I just started coding a few days ago and I’m trying to develop a first person game I found a tutorial on Youtube to help me get started, I was able to figure out all the other Movements excepts how to Jump. I was wondering what I had to add to my Character Controller to make that possible. Here is My code

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class playercontroller : MonoBehaviour
{
   [SerializeField] Transform playerCamera = null;
 
   [SerializeField] float mouseSensitivity = 3.5f; 
 
   [SerializeField] float walkSpeed = 6.0f;   

    [SerializeField]  float gravity = -13.0f;
   
  [SerializeField][Range(0.0f, 0.5f)] float moveSmoothTime = 0.3f;
   
   
  [SerializeField][Range(0.0f, 0.5f)] float mouseSmoothTime = 0.03f;
  
   [SerializeField] bool lockCursor = true; 

   
  
  float cameraPitch = 0.0f; 
  float velocityY = 0.0f;
  



   CharacterController controller = null;
   
   Vector2 currentDir = Vector2.zero;
   Vector2 currentDirVelocity = Vector2.zero;
   Vector2 currentMouseDelta = Vector2.zero;
    Vector2 currentMouseDeltaVelocity = Vector2.zero; 
   
   
   
   void Start()
    {   
        controller = GetComponent<CharacterController>();
        if(lockCursor) 
        {
             Cursor.lockState = CursorLockMode.Locked; 
             Cursor.visible = false;
        }
    }

    
    void Update()
    {
        UpdateMouseLook(); 
        UpdateMovement(); 
    }
  
    void UpdateMouseLook() 
    {
       Vector2 targetmouseDelta = new Vector2(Input.GetAxis("Mouse X"), Input.GetAxis("Mouse Y")); 
        
       currentMouseDelta = Vector2.SmoothDamp(currentMouseDelta, targetmouseDelta, ref currentMouseDeltaVelocity, mouseSmoothTime);

         cameraPitch -= currentMouseDelta.y * mouseSensitivity;  

       cameraPitch = Mathf.Clamp(cameraPitch, -90.0f, 90.0f);

       playerCamera.localEulerAngles = Vector3.right * cameraPitch;

     
       transform.Rotate(Vector3.up * currentMouseDelta.x * mouseSensitivity);  
    }
       void UpdateMovement() 
       
       {   
            Vector2 targetDir = new Vector2(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical"));
            targetDir.Normalize(); 

            currentDir = Vector2.SmoothDamp(currentDir, targetDir, ref currentDirVelocity, moveSmoothTime); 

            if(controller.isGrounded)
                velocityY = 0.0f;   

              velocityY += gravity * Time.deltaTime; 


            Vector3 velocity = (transform.forward * currentDir.y + transform.right * currentDir.x) * walkSpeed + Vector3.up * velocityY;

            controller.Move(velocity * Time.deltaTime);
               
           
            
          
           

       }
       
}
    ,

Check out the standard assets created by unity. They have a good first person player controller that you can copy/learn the code from.