How actively move a character in a spline, controllable and can move in both ways?

I am trying to make a game from zero. There have to be a character, moving in multiple splines, some of them are connected to each other, and the character must move right or left depending of if the player is presing at A or D. And the movement should be continuous among all the connected splines.

sounds like this could be achieved with a custom movement component.

where you have a ref to the current spline, the progress towards it.

then move forward increase the progress, and get the corresponding new position.

same with backwards.