# ZEP Script 개발 가이드

## 시작하기

### 소개

> 메타버스 플랫폼 ZEP에서 동작하는 앱을 누구나 제작할 수 있습니다.
>
> 캐릭터 및 오브젝트 조작 기능, 커스텀 UI 기능 등 다양한 기능을 지원합니다.
>
> 독창적인 게임부터 캘린더, 방명록 등의 생산성 앱까지, 누구나 자신만의 메타버스 앱을 만들 수 있습니다.&#x20;

:fire: [<mark style="color:purple;">**ZEP 스크립트 활용 사례**</mark>](/creator/reference/zep.md)

### 개발 환경

* Javascript (ES6)
* Typescript
* Canvas
* Web (Desktop/Mobile)

####

### ZEP-Script SDK를 이용한 개발 및 배포

ZEP-Script SDK를 사용하면 APP 개발 및 배포를 쉽게 할 수 있습니다.

:bulb: [<mark style="color:purple;">**Javascript 개발 가이드**</mark>](/creator/dev-guide/javascript.md)

:computer: [<mark style="color:purple;">**Typescript 개발 가이드**</mark>](/creator/dev-guide/typescript.md)

### 유형

{% hint style="info" %}
ZEP Script를 통해 개발된 앱은 아래 세가지 형태 중 하나를 선택하여 맵에 적용할 수 있습니다. 앱과 맵을 연결하기 위해서, [<mark style="color:purple;">**배포 가이드**</mark>](/creator/dev-guide/zep-script.md)를 참고해주세요.
{% endhint %}

**1) 미니게임 ( Mini game )**&#x20;

미니게임은 어느 맵에서나 사용할 수 있는 설치형 앱입니다. 임베드 권한이 있는 스페이스에서 **\[사이드바] > \[미니게임 아이콘]**&#xC744; 클릭해 설치할 수 있습니다. **설치한 순간부터 작동**하며, 실행한 사용자가 [<mark style="color:purple;">점프(space bar)를 통해 박스를 밟을 경우 앱이 종료</mark>](/zep-script-api/zepscriptapi/scriptapp/lifecycle.md)됩니다.

<div><figure><img src="/files/5LkJPZHGQ0EaORdQeeCI" alt=""><figcaption></figcaption></figure> <figure><img src="/files/nDNnYHAZtn97jN70dZ4s" alt=""><figcaption></figcaption></figure></div>

#### **2) 노말 앱 ( Normal app )** <a href="#undefined" id="undefined"></a>

노말 앱은 특정 맵에서만 작동할 수 있는 앱입니다. 노말 앱을 개발하여 업로드하면, **관리자**이상의 권한을 가진 유저가 맵의 **\[설정] > \[맵 설정] > \[노말 앱 추가]**&#xC5D0;서 적용할 수 있습니다. 별도의 앱 설치 과정 없이 내가 제작한 맵에만 Script를 적용할 수 있습니다.

<figure><img src="/files/QyaLsGLD4dP5ePAXbSkh" alt=""><figcaption></figcaption></figure>

#### **3) 사이드바 앱 ( Sidebar app )** <a href="#undefined" id="undefined"></a>

사이드바 앱은 PC 좌측 사이드바에 아이콘으로 표시되는 형태의 앱 입니다. 사이드바 앱을 개발하여 업로드하면, 관리자권한을 가진 맵의 플레이 화면에서 **\[사이드바] > \[앱 추가] > \[앱 관리]** 리스트에서 설치하여 추가할 수 있습니다. 사이드바 앱이 추가된 스페이스에서는 입장한 **모든 사람에게 사이드바 앱이 노출**됩니다.

{% hint style="info" %}
[<mark style="color:purple;">사이드바 앱 예제</mark>](/creator/tutor/sample/sidebarapp.md) 페이지를 참고해 사이드바 앱을 개발해보세요.
{% endhint %}

![](/files/NGjMYgT2UDhTAWPRUHMH)

***


---

# 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://docs-kr.zep.us/creator/dev-guide.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.
