Basic structure of Drupal 8

Last updated on
2 February 2017

Drupal 8 is built on the DrupalKernel, and a number of

Components:

  • Annotation
  • Assertion
  • Bridge
  • Datetime
  • Diff
  • Discovery
  • EventDispatcher
  • FileCache
  • Gettext
  • Graph
  • HttpFoundation
  • PhpStorage
  • Plugin
  • ProxyBuilder
  • Serialization
  • Transliteration
  • Utility
  • Uuid

Components MAY depend on other Drupal Components or external libraries/packages, but MUST NOT depend on any other Drupal code.
On top of the Kernel and the Components is built the base system. These are broken down into

subsystems:

These subsystems MAY depend on Drupal Components and other Subsystems, but MAY NOT depend on any code in a module.
And there are the

core modules:

  • action: used to perform tasks on specific events triggered within the system.
  • aggregator: Aggregates syndicated content (RSS, RDF, and Atom feeds) from external sources.
  • automated_cron: The existing cron system but ported as separate module in Drupal 8 to allow sites that don't use it at all not have any overhead from it.
  • ban: Enables banning of IP addresses.
  • basic_auth: Provides the HTTP Basic authentication provider
  • block: provides the admin UI for placing blocks in regions and configuring their settings.
  • block_content: Allows the creation of custom blocks through the user interface.
  • book: Allows users to create and organize related content in an outline.
  • breakpoint: Manage breakpoints and breakpoint groups for responsive designs.
  • ckeditor: WYSIWYG editing for rich text fields using CKEditor.
  • color: Allows administrators to change the color scheme of compatible themes.
  • comment: Allows users to comment on and discuss published content.
  • config: Allows administrators to manage configuration changes.
  • config_translation: Provides a translation interface for configuration.
  • contact: Enables the use of both personal and site-wide contact forms.
  • content_translation: Allows users to translate content entities.
  • contextual: Provides contextual links to perform actions related to elements on a page.
  • datetime: Defines datetime form elements and a datetime field type.
  • datetime_range: Provides a Date field that stores start dates and times, as well as end dates and times.
  • dblog: Logs and records system events to the database.
  • dynamic_page_cache: It caches pages minus the personalized parts. It is recommended for websites of all sizes.
  • editor: Provides a means to associate text formats with text editor libraries such as WYSIWYGs or toolbars.
  • entity_reference: Provides a field that can reference other entities.
  • field: Field API to add fields to entities like nodes and users.
  • field_ui: User interface for the Field API.
  • file: Defines a file field type.
  • filter: Filters content in preparation for display.
  • forum: Provides discussion forums.
  • hal: Serializes entities using Hypertext Application Language.
  • help: Manages the display of online help.
  • history: Records which user has read which content.
  • image: Defines an image field type and provides image manipulation tools.
  • language: Allows users to configure languages and apply them to content.
  • link: Provides a simple link field type.
  • locale: Translates the built-in user interface.
  • menu_link_content: Allows administrators to create custom menu links.
  • menu_ui: Allows administrators to customize the site navigation menu.
  • migrate, migrate api: Handles migrations
  • migrate_drupal: Contains migrations from older Drupal versions.
  • node: Allows content to be submitted to the site and displayed on pages.
  • options: Defines selection, check box and radio button widgets for text and numeric fields.
  • page_cache: Internal page cache that caches pages for anonymous users, recommended for small to medium-sized websites.
  • path: Allows users to rename URLs.
  • quickedit: In-place content editing.
  • rdf: Enriches your content with metadata to let other applications (e.g. search engines, aggregators) better understand its relationships and attributes.
  • responsive_image: Provides an image formatter and breakpoint mappings to output responsive images using the HTML5 picture tag.
  • rest: Exposes entities and other resources as RESTful web API
  • search: Enables site-wide keyword searching.
  • serialization: Provides a service for (de)serializing data to/from formats such as JSON and XML
  • shortcut: Allows users to manage customizable lists of shortcut links.
  • simpletest: Provides a framework for unit and functional testing.
  • statistics: Logs content statistics for your site.
  • syslog: Logs and records system events to syslog.
  • system: Handles general site configuration for administrators.
  • taxonomy: Enables the categorization of content.
  • telephone: Defines a field type for telephone numbers.
  • text: Defines simple text field types.
  • toolbar: Provides a toolbar that shows the top-level administration menu items and links from other modules.
  • tour, tour api: Provides guided tours.
  • tracker: Enables tracking of recent content for users.
  • update: Checks for available updates, and can securely install or update modules and themes via a web interface.
  • user: Manages the user registration and login system.
  • views: Create customized lists and queries from your database.
  • views_ui: Administrative interface for Views.

Tags