A microframework is a term used to refer to minimalistic web application frameworks. It is contrasted with full-stack frameworks.
It lacks most of the functionality which is common to expect in a full-fledged web application framework, such as:
- Accounts, authentication, authorization, roles
- Database abstraction via an object-relational mapping
- Input validation and input sanitation
- Web template engine
Typically, a microframework facilitates receiving an HTTP request, routing the HTTP request to the appropriate function and returning an HTTP response. Microframeworks are often specifically designed for building the APIs for another service or application. [1] For example, Lumen microframework is designed for microservices development and API development.
Pseudocode example
editrequire "foo.php";
foo::get("/hello/{name}", function($name) {
return "Hello $name!";
});
Microframeworks
edit- Bottle for Python
- Camping for Ruby
- Express.js for Node.js
- Falcon[2] for Python
- Fastify for Node.js
- Flask for Python
- Scalatra for Scala
- Lumen for PHP
- Slim for PHP
- Silex for PHP
- Sinatra for Ruby
- Spark for Java
- Jooby for Java
- Javalin for Java
- Jodd for Java
- Helidon for Java
- Pippo for Java
- Rapidoid for Java
- Armeria for Java
- Akka HTTP for Java
- Ratpack for Java
- Ktor for Kotlin
- Toolatra for Tcl
References
edit- ^ "Full-Stack Framework or Microframework, Laravel or Lumen?". Retrieved 2016-09-13.
- ^ "Falcon | The minimal, fast, and secure web framework for Python". falconframework.org. Retrieved 25 October 2021.