# Aviary User Interface

![three Aviary levels](images/levels.png)

Aviary's user interface is designed to provide a seamless transition between different levels of complexity, allowing users to adapt and progress based on their needs and expertise.
The levels build upon one another, with each level incorporating the methods and capabilities of the previous level.
We'll explore how the levels are interconnected, but first let's describe the levels in broad strokes using a Lego-based metaphor.

Level 3 is like a huge pile of Legos.
You can build anything you want with it, but you have to know how to use the Legos; there are no instructions.
This is using the pieces of Aviary to build your own analysis or optimization model.

Level 2 is like a Lego set with instructions, but it's those late 80s/90s instructions where the steps aren't necessarily clear.
You have more flexibility in choosing how you assemble the Legos, but you have some guide rails and reasonably clear instructions.
Most anything you would do in Level 3 you can do here, you just might have slightly less flexibility in how you do it because we've established an API and some assumptions.

Level 1 is like a modern-day Lego set where the instructions are very clear and you have a limited number of Legos to work with.
You can build a lot of different coupled aircraft-mission optimization problems, but you don't have much flexibility in how you do it.

Maybe this metaphor is helpful for you.
Regardless, let's dive into the details of each level.