CONFIGURATION AND FEATURES -------------------------- Drupal core (what you get when you download and extract a drupal-x.y.tar.gz or drupal-x.y.zip file from https://www.drupal.org/project/drupal) has what you need to get started with your website. It includes several modules (extensions that add functionality) for common website features, such as managing content, user accounts, image uploading, and search. Core comes with many options that allow site-specific configuration. In addition to the core modules, there are thousands of contributed modules (for functionality not included with Drupal core) available for download. More about configuration: * Install, update, and maintain Drupal: See INSTALL.txt and UPDATE.txt in the "core" directory. * Learn about how to use Drupal to create your site: https://www.drupal.org/documentation * Follow best practices: https://www.drupal.org/best-practices * Download contributed modules to /modules to extend Drupal's functionality: https://www.drupal.org/project/project_module * See also: "Developing for Drupal" for writing your own modules, below. INSTALLATION PROFILES --------------------- Installation profiles define additional steps (such as enabling modules, defining content types, etc.) that run after the base installation provided by core when Drupal is first installed. There are two basic installation profiles provided with Drupal core. Installation profiles from the Drupal community modify the installation process to provide a website for a specific use case, such as a CMS for media publishers, a web-based project tracking tool, or a full-fledged CRM for non-profit organizations raising money and accepting donations. They can be distributed as bare installation profiles or as "distributions". Distributions include Drupal core, the installation profile, and all other required extensions, such as contributed and custom modules, themes, and third-party libraries. Bare installation profiles require you to download Drupal Core and the required extensions separately; place the downloaded profile in the /profiles directory before you start the installation process. More about installation profiles and distributions: * Read about the difference between installation profiles and distributions: https://www.drupal.org/docs/distributions/creating-distributions * Download contributed installation profiles and distributions: https://www.drupal.org/project/project_distribution * Develop your own installation profile or distribution: https://www.drupal.org/docs/distributions/creating-distributions APPEARANCE ---------- In Drupal, the appearance of your site is set by the theme (themes are extensions that set fonts, colors, and layout). Drupal core comes with several themes. More themes are available for download, and you can also create your own custom theme. More about themes: * Download contributed themes to /themes to modify Drupal's appearance: https://www.drupal.org/project/project_theme * Develop your own theme: https://www.drupal.org/docs/theming-drupal DEVELOPING FOR DRUPAL --------------------- Drupal contains an extensive API that allows you to add to and modify the functionality of your site. This means that you should never need to directly modify the files that come with Drupal core to achieve the behavior you want; instead, modifications take the form of modules. When you need new functionality for your Drupal site, search for existing contributed modules. If you find a module that matches except for a bug or an additional needed feature, change the module and contribute your improvements back to the project in the form of a "patch". Create new custom modules only when nothing existing comes close to what you need. More about developing: * Extending and altering Drupal https://api.drupal.org/api/drupal/core%21core.api.php/group/extending * Search for existing contributed modules: https://www.drupal.org/project/project_module * Contribute a patch: https://www.drupal.org/patch/submit * Develop your own module: https://www.drupal.org/developing/modules * Follow programming best practices: https://www.drupal.org/docs/develop/standards * Refer to the API documentation: https://api.drupal.org * Learn from documented Drupal API examples: https://www.drupal.org/project/examples