Skip to main content

What's a Layer Project?

A Layer Project is a directory that contains YAML configuration files along with corresponding model (currently only in Python) and feature definitions (currently only in SQL).

A Layer Project enables you to define reusable entities (Features, ML Models) declaratively without worrying about build pipelines, dependency graphs, or the infrastructure. Basically, you tell Layer what you want accomplished, rather than how to accomplish it step by step. We call this Declarative MLOps.

Create a Layer Project#

After you install and login with the Layer SDK, run the following command in an empty directory to create a Layer Project:

layer init

It will create a .layer subdirectory in the current working directory which contains all the necessary meta data of a Layer Project.

.
├── .layer
│ ├── project.yml # Main project configuration file

project.yml#

This is the main configuration of your Layer Project. The root of the project has a .layer/ directory, where you can find the project.yml. This file contains metadata about the project.

Clone our project template!

We have created an empty Layer Project for you with our recommended folder structure. You can also clone it by running:

layer clone https://github.com/layerml/empty

Build a Layer Project#

Once you develop your entities (datasets, featuresets, ML models), you can start building your Layer project with a single command:

layer start