A web framework (WF) or web application framework (WAF) is a software framework that is designed to support the development of web applications including web services, web resources, and web APIs.
Frameworks provide a standard way to build and deploy web applications on the World Wide Web. Web frameworks aim to automate the overhead associated with common activities performed in web development.
For example, many web frameworks provide libraries for database access, templating frameworks, and session management, and they often promote code reuse. Although they often target development of dynamic web sites, they are also applicable to static websites.
A web framework is a software library that enables developers to write software that runs on the web. Common areas where developers use web frameworks are:
- Backend: The software that runs on servers and serves web sites, web apps, and also APIs for the exchange of data.
- Frontend: The software that runs on clients, in web browsers and provides content and interactivity to the user.
What are the uses of a backend web framework?
- Backend frameworks remove the overhead of developing a web application by abstracting repetitive tasks and providing code reusability.
- The framework generally handles routine tasks such as accepting HTTP requests, delegating processing to the appropriate handler, and formatting and returning responses.
Some frameworks focus on a smaller subset of these features but still support plugins or tools to accomplish the other aspects. Popular backend frameworks are Django for Python and Ruby on Rails for Ruby.
What are the uses of a frontend web framework?
- With the advent of web applications, most notably single-page applications, frontend frameworks currently enjoy increased popularity.
- New frontend frameworks contain bespoke tooling to provide many advanced features such as novel syntax (React JSX) and file types (Vue SFC).
Some of the most popular frontend frameworks are Angular, Ember, React, and Vue.