A stack is the collection of a base and its layers. A stack base is input code that translates to a Terraform root module. A stack layer is an instance of its stack's base, on the environment it maps to.
This means you get to reinstantiate the same base (root module) as many times (layers) as you want.
It's like Terraform modules but simpler because you don't even have to initialize the module 1000 times to get 1000 copies of it, just create 1000 empty folders in your layers directory.