Get to know the Umbraco codebase. Developing an application requires knowledge about the tool you're working with. This section will give you an introduction to the structure of Umbraco.

    Default Routing

    Describes the entire process - from a front-end user request to content delivery

    Custom Routing

    Custom URLs and custom MVC routes


    The different type of controllers and what they can do

    Data Persistence

    Manipulating Umbraco database data (CRUD)


    (Discontinued) Information about using the REST API add-on for Umbraco


    Customising the behaviour of an Umbraco Application at 'start up'. e.g. adding, removing or replacing the core functionality of Umbraco or registering custom code to subscribe to events.


    Umbraco has a range of 'Core' Services and Helpers that act as a 'gateway' to Umbraco data and functionality to use when extending or implementing an Umbraco site.

    Unit Testing

    Examples of how to setup Unit Tests with Umbraco 8

    Integration Test

    Examples of how to setup Integration Tests with Umbraco 9.1.0

    Nullable Reference Types

    Using Nullable reference types, it's possible to ignore warnings or intentionally use null as an argument to a method expecting a non nullable reference.