# Code App Documentation

We built it because there is nothing else on the App Store provides all these features in one app:

* A robust, high-performance text editor (Monaco Editor from Visual Studio Code)
* First class local file system support
* Extensive local language support
* SSH / FTP remote connection support (Files and terminal)
* Embedded emulated terminal
* Git Version Control
* Package manager support (pip and npm)
* Markdown, themes, server-side snippet execution and more

{% hint style="info" %}
While we want to make the editing experience as close as a desktop offers, Code App is still bounded by iOS's limitations. For example, you cannot download arbitary commands or modules with native components. Spawning subprocesses is also not possible.
{% endhint %}

![Compiling a C++ file with Clang](https://2795973332-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzNRZttJUHODcLjBFRZHP%2Fuploads%2FQfMDOriromO2ScAKXJ1T%2Fimage.png?alt=media\&token=3d085f0b-3682-4445-ae6f-d93d1b0e4443)

## Getting Started

### Installation

You can either install the app from App Store or TestFlight.

{% embed url="<https://apps.apple.com/us/app/code-app/id1512938504>" %}
Link to App Store ($5.99)
{% endembed %}

{% embed url="<https://testflight.apple.com/join/EgZ8sE2P>" %}
Link to TestFlight (Free)
{% endembed %}

Or if you'd like to get your hands dirty (Requires a Mac with Xcode installed) :&#x20;

{% embed url="<https://github.com/thebaselab/codeapp>" %}
Link to our repo
{% endembed %}

### Jump right in

Follow these guides to get started on the basics:

{% content-ref url="guides/getting-familiar" %}
[getting-familiar](https://code.thebaselab.com/guides/getting-familiar)
{% endcontent-ref %}

{% content-ref url="guides/your-first-program-in-python" %}
[your-first-program-in-python](https://code.thebaselab.com/guides/your-first-program-in-python)
{% endcontent-ref %}

{% content-ref url="guides/creating-a-node.js-project" %}
[creating-a-node.js-project](https://code.thebaselab.com/guides/creating-a-node.js-project)
{% endcontent-ref %}

{% content-ref url="guides/version-control" %}
[version-control](https://code.thebaselab.com/guides/version-control)
{% endcontent-ref %}

{% content-ref url="guides/connecting-to-a-remote-server-ssh-ftp" %}
[connecting-to-a-remote-server-ssh-ftp](https://code.thebaselab.com/guides/connecting-to-a-remote-server-ssh-ftp)
{% endcontent-ref %}

### Other Resources

{% content-ref url="extras/building-code-from-source" %}
[building-code-from-source](https://code.thebaselab.com/extras/building-code-from-source)
{% endcontent-ref %}

{% content-ref url="extras/frequently-asked-questions" %}
[frequently-asked-questions](https://code.thebaselab.com/extras/frequently-asked-questions)
{% endcontent-ref %}

{% content-ref url="extras/supported-languages" %}
[supported-languages](https://code.thebaselab.com/extras/supported-languages)
{% endcontent-ref %}
