Um framework é um conjunto de códigos e bibliotecas que fornecem funcionalidades genéricas para vários projetos de software. Eles têm partes fixas e configuráveis, controlam o fluxo da aplicação e promovem reutilização de código. Frameworks aumentam a produtividade ao fornecer funcionalidades como login, cadastro e controle de sessão de forma pronta.