> For the complete documentation index, see [llms.txt](https://docs.appmachine.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.appmachine.com/developers/javascript.md).

# JavaScript

A JavaScript package to develop custom functionality for AppMachine applications. This enables you to create your own UI by retrieving data, changing data, and controlling the app.

## Functions[​](https://docs.appmachine.com/libraries/javascript/sdk#functions) <a href="#functions" id="functions"></a>

To be able to manage the app with your custom JavaScript you use the `@myjsblock/sdk` package. This package exposes asynchronous functions to call from your application. The functions provide a simplified API to communicate with the application shell.

All the functions of `@myjsblock/sdk` are categorized in the following categories:

* [Core](#core)
* [Data](#data)
* [Navigation](#navigation)
* [Notification](#notification)
* [Media](#media)
* [User](#user)

#### Core[​](https://docs.appmachine.com/libraries/javascript/sdk#core) <a href="#core" id="core"></a>

Core functions are the basic interactive functions like `showLoader` and `hideLoader`, and also offers functions to request and set data on "block level".

See all [Core functions](/developers/javascript/sdk/core.md)

#### Data[​](https://docs.appmachine.com/libraries/javascript/sdk#data) <a href="#data" id="data"></a>

Data includes all functions for retrieving data from block data context. This does not include functions to change data.

See all [Data functions](/developers/javascript/sdk/js-data.md)

#### Navigation[​](https://docs.appmachine.com/libraries/javascript/sdk#navigation) <a href="#navigation" id="navigation"></a>

Navigation includes functions to navigate through the app. For example navigate to another block or go back.

See all [Navigation functions](/developers/javascript/sdk/navigation.md)

#### Notification[​](https://docs.appmachine.com/libraries/javascript/sdk#notification) <a href="#notification" id="notification"></a>

Notification includes functions to create native interactive modals, dialogs and alerts to the user.

See all [Notification functions](/developers/javascript/sdk/notification.md)

#### Media[​](https://docs.appmachine.com/libraries/javascript/sdk#media) <a href="#media" id="media"></a>

Media includes functions to access the device's media, like picking images and taking pictures with the device's camera.

See all [Media functions](/developers/javascript/sdk/media.md)

#### User[​](https://docs.appmachine.com/libraries/javascript/sdk#user) <a href="#user" id="user"></a>

User includes functions to access user information, like whether someone is authenticated or what the users data is.

See all [User functions](/developers/javascript/sdk/user.md)
