# Ember CLI

The Ember CLI (command line interface) is the official way to create, build, test, and serve the files that make up an Ember.js app or addon. Many things have to happen before any web app is ready for the browser, and the Ember CLI helps you get there with zero configuration.

## Addons

There are thousands of JavaScript libraries that work great in Ember. When an npm package offers some Ember-specific conveniences, we call it an “addon.” Ember CLI’s addon system provides a way to create reusable units of code, share components and styling, extend the build tooling, and more — all with minimal configuration. To view a complete list of addons, visit [EmberObserver](https://emberobserver.com/). You can still use your favorite npm packages directly too. If they are not available as addons yet, you can add them into your build pipeline or create your own addon wrappers.

### Assets Compilation

Ember CLI’s asset compilation system has out-of-the-box support for:

* [LESS](http://lesscss.org/)
* [Sass](https://sass-lang.com/)
* [Compass](http://compass-style.org/)
* [EmberScript](http://emberscript.com/)
* [Handlebars](https://handlebarsjs.com/)
* Minified JS & CSS

### Basic Commands

`ember serve`: Start a local ember server with livereload on file modifications (for development purpose)

`ember build`: Build an ember app distributable bundle into ./dist folder


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://prospect-io.gitbook.io/developer-playbook/our-stack/ember.js/ember-cli.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
