# Use Cases
## Functionality
#### Developers
- Generate template code from models
  - Developers write models in YAML, which MAC translates into C# and JavaScript.
- Configure aspects of web server
  - Developers can create configuration files to change aspects of how the web server behaves with the specific API.

#### Webmasters
- Configure server
  - Configure aspects of the server which pertain to webmasters, such as TLS parameters and "virtual host" definitions.
- Control server
  - Webmasters can do basic operations to the server from the server's console.  These actions include reloading configuration and stopping the service.

#### Users
- CRUD
  - JSON endpoints
  - JavaScript Functions
  - UI features created by the developers
- ACLs
  - Per field Access controls

#### Admins
- CRUD
  - JSON endpoints
  - JavaScript Functions
- ACLs
  - Per field Access controls
  - Admin should be read/edit all fields
