Well, I'm game programmer and there is long debate about difference between engine(library) and framework
There is a short answer that "With engine, you call function. But with framework, function call you"
It may not so obvious but framework, unlike engine, mostly told you that you have some pattern you must follow. But inbetween of that pattern is your logic you want to happen. framework will manage many things for you
Unlike engine that you need to maintain state of engine along with your logic. You make a start, loop and finish with your own style then call engine to do work when you want
Framework is not so peculiar. HTML/JS is actually a framework. You write script tag and expect it to be called from browser. Angular and other framework just wrap another layer to make your life easier when you need to focus on logic