As it turns out, I'm kind of insane ;) lets just say I'm now very good at the beginning section. This game was very fun! It really reminded me of the mobile game "trap adventure", if you've ever played that. I appreciated how you can't get the boxes stuck in corners too. The ending took me a bit by surprise, but I was all for it.
The only thing I would work on a bit is the jumping, cause at the moment it can feel as thought the inputs can be dropped if you're a fraction late. To fix this you can simply add a bool for the jump input, where its true when the jump button is hit, and when the player is on the ground and that bool is true, the jump occurs, also reseting the bool. Also if you really wanted to give a bit of leniency, you could add a small timer for after you leave the ground to still have the player be "grounded" so if the input comes right after you walk off of an edge, it'll still jump.
I hope this was informative, and good luck! other than the jump mechanic tho, I felt that this was a really solid project!