<commit_before>---
layout: v2_fluid/docs_base
category: getting-started
id: concepts
title: Ionic 2 | Getting Started | Concepts
header_title: Getting Started - Concepts
header_sub_title: Ionic 2 Developer Preview
---


# Core Concepts

<a class="improve-v2-docs" href='https://github.com/driftyco/ionic-site/edit/master/docs/v2/getting-started/concepts/index.md'>Improve this doc</a>

If you're new to Ionic and/or hybrid mobile development, it can help to get a high-level understanding of the core concepts and tools behind Ionic.

## What is Ionic?

Ionic is a SDK that allows developers to build mobile apps using familiar web technologies (HTML, CSS, Javascript). 


## What is the Ionic CLI?

The [CLI](../../resources/what-is/#cli), or command line interface is a tools that provides a number of helpful commands to Ionic developers. In addition to installing and updating Ionic, the CLI comes with a built in development server, build and debugging tools, and much more. If you are using the [Ionic Platform](http://ionic.io/), the CLI can be used to interact with your account programmatically.

## What are components?

Components are reusable UI elements that serve as building blocks for your mobile app. Components are made up of HTML, CSS, and sometimes Javascript. All Ionic components adapt to the platform your app is running on.


## What is theming?

Themes are sets of styles that get applied to an app. Ionic uses a light theme by default, but it also comes with a dark theme. In addition to theming, Ionic components have platform specific styles. This means the app's styles will change based on the platform (iOS, Android, etc.)

## How does navigation work?
<commit_msg>Fix grammar in CLI section<commit_after>---
layout: v2_fluid/docs_base
category: getting-started
id: concepts
title: Ionic 2 | Getting Started | Concepts
header_title: Getting Started - Concepts
header_sub_title: Ionic 2 Developer Preview
---


# Core Concepts

<a class="improve-v2-docs" href='https://github.com/driftyco/ionic-site/edit/master/docs/v2/getting-started/concepts/index.md'>Improve this doc</a>

If you're new to Ionic and/or hybrid mobile development, it can help to get a high-level understanding of the core concepts and tools behind Ionic.

## What is Ionic?

Ionic is a SDK that allows developers to build mobile apps using familiar web technologies (HTML, CSS, Javascript).


## What is the Ionic CLI?

The [CLI](../../resources/what-is/#cli), or command line interface, is a tool that provides a number of helpful commands to Ionic developers. In addition to installing and updating Ionic, the CLI comes with a built-in development server, build and debugging tools, and much more. If you are using the [Ionic Platform](http://ionic.io/), the CLI can be used to interact with your account programmatically.

## What are components?

Components are reusable UI elements that serve as building blocks for your mobile app. Components are made up of HTML, CSS, and sometimes Javascript. All Ionic components adapt to the platform your app is running on.


## What is theming?

Themes are sets of styles that get applied to an app. Ionic uses a light theme by default, but it also comes with a dark theme. In addition to theming, Ionic components have platform specific styles. This means the app's styles will change based on the platform (iOS, Android, etc.)

## How does navigation work?

{'fraction_non_alphanumeric': 0.07226792009400705, 'fraction_numerical': 0.002937720329024677, 'mean_word_length': 4.35377358490566, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6601162', 'n_tokens_mistral': 958, 'n_tokens_neox': 886, 'n_words': 475}