Data Modeling

Data modeling is where we begin.

Introduction

Data modeling is a fundamental aspect of building with the Streams platform.

Domain Information

The Streams platform leans heavily on domain-driven design (DDD). We call these domain abstractions streams, hence our namesake.

An example could be configuring a domain model (a stream) for a website's pages, users of an application, or feedback submissions from a form.

Data Sources

If not configured otherwise, streams will utilize the built-in flat-file database. All databases available to Laravel are supported as well.

Domain Entities

Domain entities are called entries within the Streams platform. A stream also defines entry attributes, or fields, that dictate the entry's properties, data-casting, and more.

Managing Entities

The Streams platform separates methods to retrieve and store entries from the entry objects themselves, less a few convenient functions like save and delete, by using a repository pattern.