• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Overview of the ArkTS Compilation Toolchain
2
3To support the compilation of ArkTS applications, the ArkTS application SDK offers a comprehensive toolchain. This toolchain is integrated into the [Hvigor](https://developer.huawei.com/consumer/en/doc/harmonyos-guides/ide-hvigor) task orchestration tool to compile ArkTS/TS/JS source code into Ark bytecode files (*.abc).
4
5The toolchain begins with syntax transformation, including syntax check and UI transformation, during compilation process. To ensure source code security, the toolchain uses [ArkGuard](source-obfuscation.md) to obfuscate the source code. Before the bytecode is written to disk, the toolchain checks whether [custom bytecode modifications](customize-bytecode-during-compilation.md) are required. If modifications are required, custom modification code is loaded and executed. After generating the bytecode file, the [Disassembler](tool-disassembler.md) tool is used to inspect the file content. For details about the bytecode, see [Ark Bytecode File Format](arkts-bytecode-file-format.md).
6
7The ArkTS compilation toolchain provides the following functions:
8
91. Syntax check: checks whether the ArkTS/TS syntax is correct.
10
112. UI transformation: converts ArkTS UI paradigm syntax to standard TS syntax.
12
133. Source code obfuscation: uses the ArkGuard tool to obfuscate the source code. You can enable this function based on service requirements.
14
154. Bytecode compilation: The Ark compiler generates Ark bytecode files (\*.abc).
16
175. Custom bytecode modification: provides an entry for you to modify bytecode before it is written to disk.
18
196. Disassembly: uses the Disassembler tool to convert bytecode into human-readable assembly instructions.
20
21The following figure shows how the ArkTS compilation toolchain builds a HAP.
22
23![compilation-tool-overview](figures/compilation-tool-overview.png)
24