blob: 7db9cb1f32948e9a9aad0276f52c69c2d2ea630a [file] [log] [blame] [view]
# Devtools
Unopinionated tools for **running**, **debugging** and **testing** Mojo apps.
## Repo contents
Devtools offer the following tools:
- **mojo_shell** - universall shell runner
- **debugger** - supports interactive tracing and debugging of a running mojo shell
- **remote_adb_setup** - configures adb on a remote machine to communicate with
a device attached to the local machine
and a Python scripting library designed for being embedded (devtoolslib).
### Devtoolslib
**devtoolslib** is a Python module containing the core scripting functionality
for running Mojo apps: shell abstraction with implementations for Android and
Linux and support for apptest frameworks. The executable scripts in devtools
are based on this module.
As devtools carry no assumptions about build system or file layout being used,
one can choose to embed the functionality provided by **devtoolslib** in their
own wrapper, instead of relying on the provided scripts. For examples, one can
refer to mojo's [apptest
runner](https://github.com/domokit/mojo/blob/master/mojo/tools/apptest_runner.py).
## Install
```
git clone https://github.com/domokit/devtools.git
```
## Development
The library is canonically developed [in the mojo
repository](https://github.com/domokit/mojo/tree/master/mojo/devtools/common),
https://github.com/domokit/devtools is a mirror allowing to consume it
separately.