You did a lot of stuff wrong, I wouldn't fire someone for most of it anyway. The one thing you did really wrong and is indeed reason enough to fire someone was the way you handled the client call.
However, the fact that you made all those mistakes can mean two things. You are a rebel who doesn't follow orders, and doesn't respect rules, or that company has a really bad on-boarding process or no process at all. And I'm pretty sure it's the second option.
Just FYI, that's the type of company that wastes time intentionally to charge the client with more hours. In this case working faster actually means earning less. The used a framework no one has experience with not because they are stupid, but because someone else is paying for their time, so they're basically charging the client for training. Pretty unethical.
So tl;dr: You did wrong, but you're better off not working for that company.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.