---
title: Introduction
---

# Introduction

<div class="documentation__toc"></div>

## What is the Streams Platform?

The Streams Platform is a [Composer package](https://packagist.org/packages/anomaly/streams-platform) that serves as the foundation for PyroCMS. 

Nearly every functionality in every addon for PyroCMS relies on the Streams Platform to do it's work. The Streams Platform is responsible for everything from [Table Builders](../ui/tables) to [Image](../core-principles/image) and [Asset](../core-principles/asset) pipelines to providing the actual addon layer itself. 

A top level summary of PyroCMS's architecture would be `PyroCMS = Laravel + Streams Platform + Addons`.

## What are streams?

We have three distinct concepts that use the term "Streams" in it's name.

### Streams Data

Streams when used as a noun is often referring to the structure/information in the Stream's database table(s). The records in a stream are referred to as `Entries`. 

### Streams Platform

The Streams Platform is the foundation of PyroCMS. It can be seen as a framework like Laravel. Usually used by name or the abbreviation "SP" in discussion. Sometimes referred to as the `Streams API` (not to be confused with the API module).

### Streams Module

The Streams Module is a [PRO](https://pyrocms.com/pro) addon that let's you manage Streams Data via the [control panel](/documentation/pyrocms/latest/getting-started/control-panel). Typically you would run a couple commands to make an addon and scaffold streams. However the Streams Module let's you do the same visually and has configurable overrides to customize UI and even an option to add the namespace to your navigation like a virtual module. 


## The Application Reference

You will often see `{application}` mentioned in documentation. The Streams Platform can handle multiple applications with a single installation. For this reason we use the `application_reference` to distinguish resources between potential multiple applications being served.  

### What is my application reference?

You can find your `APPLICATION_REFERENCE` in the `.env` file within the root directory of your application.
