Drupal is an open source content management framework and content management system that allows users to build and manage websites and applications. At its core, Drupal provides a framework and common functions that power its modules, themes, forms, user management, and other features. This document outlines Drupal's architecture including its module and theme systems, forms API, security features, and how it uses hooks to enable extensibility.