Introduction
Web2py, written in Python and programmable in python, is a free, open-source web framework for Agile development that involves database-driven web applications. It is a full-stack framework with every part a developer could need to create a fully functional web application.

In contrast to conventional patterns, the web2py framework runs web applications using the Model-View-Controller design.
-
The model is a component of the application that contains the data logic. Data from the database is retrieved and stored using the objects in the model.
-
The application's view component aids in providing users with the data display. Data is pulled from the model for the data display.
-
The controller manages user interaction and is a component of the application. Controllers can read information from views, control user input, and send information to a particular model.
Let's look into the libraries in web2py and know more about them.
Libraries
They are included in web2py and made available to all applications as objects. These objects are defined in the core files in the "gluon" directory.

Numerous modules, such as the DAL(Database Abstraction Layer) template, are independent and can be used without the web2py framework. Additionally, it keeps the unit tests running, which is regarded as best practice.
The user applications can access the web2py libraries as global objects. For instance, classes (helpers, validators, DAL API), requests, responses, sessions, and caches.
Web2py Libraries
The libraries present in the web2py.py file are:

Some more of the libraries in web2py are:
Libraries |
Description |
| gluon/contrib/redis_cache.py | It is a module to store cache in the Redis database. |
| gluon/contrib/gql.py | gql, a port of the DAL to the Google App Engine. |
| gluon/contrib/memdb.py | memdb, a port of the DAL on top of memcache. |
| gluon/contrib/gae_memcache.py | gae_memcache is an API to use memcache on the Google App Engine. |
| gluon/contrib/populate.py | A Bayesian classifier to populate the database with dummy data for testing purposes. |
| gluon/contrib/heroku.py | A file with API for running on Heroku.com. |
| gluon/contrib/taskbar_widget.py | A file that allows interaction with the taskbar in windows, when web2py is running as a service. |
|
gluon/contrib/__init__.py gluon/contrib/feedparser.py |
feedparser for reading RSS and Atom feeds |
|
gluon/contrib/markdown/__init__.py gluon/contrib/markdown/markdown2.py |
markdown for wiki markup. |
| gluon/contrib/fpdf | fpdf created my Mariano Reingart for generating PDF documents. |
| gluon/contrib/pysimplesoap/ | pysimplesoap is a lightweight SOAP server implementation. |
| gluon/contrib/simplejsonrpc.py | simplejsonrpc is a lightweight JSON-RPC client also created. |
|
gluon/contrib/memcache/__init__.py gluon/contrib/memcache/memcache.py |
memcache Python API |
| gluon/contrib/google_wallet.py | Google Wallet provides "pay now" buttons which link Google as payment processor. |
| gluon/contrib/stripe.py | Stripe.com provides a simple API for accepting credit card payments. |
| gluon/contrib/AuthorizeNet.py | AuthorizeNet provides API to accept credit card payments via Authorize.net network |
| gluon/contrib/DowCommerce.py | Dowcommerce credit card processing API. |
| gluon/contrib/paymentech.py | PaymentTech credit card processing API. |
| gluon/contrib/populate.py | A Bayesian classifier to populate the database with dummy data for testing purposes. |
These are the optional login_methods and login_forms to be used for authentication:

Note: Many of these modules of libraries in web2py, including DAL (the Database Abstraction Layer), template (the template language), rocket (the web server), and HTML (the helpers), have no dependencies and can be used outside of web2py.





