# Developer Guide

Welcome to the Hex-Rays Developer Guide, where you can learn how to enhance IDA's capabilities and extend its features.

Whether you're new to IDA development or an experienced reverse engineer, our tools and documentation are designed to help you extend IDA’s capabilities to match your needs.

## Beginner Development Path

### Domain API

Our **beginner-friendly** [Domain API](https://github.com/HexRaysSA/ida-domain) is designed for faster scripting and offers an **easy entry point**, perfect for those who value simplicity over complexity.

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Getting Started</strong></td><td></td><td></td><td><a href="https://ida-domain.docs.hex-rays.com/getting_started/">https://ida-domain.docs.hex-rays.com/getting_started/</a></td></tr><tr><td><strong>Examples</strong></td><td></td><td></td><td><a href="https://ida-domain.docs.hex-rays.com/examples/">https://ida-domain.docs.hex-rays.com/examples/</a></td></tr><tr><td><strong>Reference</strong></td><td></td><td></td><td><a href="https://ida-domain.docs.hex-rays.com/usage/">https://ida-domain.docs.hex-rays.com/usage/</a></td></tr></tbody></table>

## Advanced Development Path

### C++ and IDAPython SDK Fundamentals

For advanced use cases requiring low-level control, explore our C++ and IDAPython SDK, open source and available on [GitHub](https://github.com/HexRaysSA/ida-sdk). Begin your journey by learning about core concepts and exploring common examples relevant to your language of choice.

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden></th></tr></thead><tbody><tr><td>Start using C++ SDK</td><td></td><td></td><td><a href="developer-guide/cpp-sdk/cpp-sdk-getting-started">cpp-sdk-getting-started</a></td><td><a href="developer-guide/cpp-sdk/cpp-sdk-getting-started">c++</a></td></tr><tr><td>Start using IDAPython SDK</td><td></td><td></td><td><a href="developer-guide/idapython/idapython-getting-started">idapython-getting-started</a></td><td><a href="developer-guide/idapython/idapython-getting-started">IDAPython</a></td></tr></tbody></table>

### C++ and IDAPython SDK Reference Documentation

Refer to our detailed C++ and IDAPython SDK documentation for a complete overview of available modules and functions.

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>C++ reference</strong></td><td></td><td></td><td><a href="https://cpp.docs.hex-rays.com/">https://cpp.docs.hex-rays.com/</a></td></tr><tr><td><strong>IDAPython reference</strong></td><td></td><td></td><td><a href="https://python.docs.hex-rays.com/">https://python.docs.hex-rays.com/</a></td></tr></tbody></table>
