A lot of the difficulty in this game comes from the not-so-precise collision detection. When the character is on a ledge, the jump input doesn't register at all. Have there be a frame or a few after the character leaves the platform that allows them to still be able to jump. These are called "Coyote Frames". It will go a long way in making the player feel like the game isn't missing inputs.
I also suggest adding "Jump Buffering" pretty much the opposite of coyote frames. It allows for the jump input to register for a frame or few before the character lands and once the character actually lands, they jump.
I see the potential here. Just needs a little polishing and you've got a decent platformer on your hands! Thanks for sharing and good luck!