The Eptalights Code Analysis Python Library is a powerful Python package designed to help hackers, researchers, and developers effortlessly perform code analysis, discover bugs, conduct variant analysis, and leverage advanced AI for deeper program analysis and faster research workflows.
Easily access functions, instructions, callsites, variables, control flow graphs (CFG), and other code elements in a simple, Pythonic way. Think of it as Binary Ninja but for source code.
For detailed documentation, please visit Eptalights Documentation.
You can also check out this blog post for an introduction to Eptalights's Technology.
install the Python package eptalights-python with:
pip install eptalightsAlternatively, you may install from GitHub:
pip install git+https://github.com/eptalights/eptalights-python.git
# or build from source (git assumed to be available)
git clone https://github.com/eptalights/eptalights-python.git
pip install path/to/eptalights-pythonThe latest code under development is available on GitHub at https://github.com/eptalights/eptalights-python.
To obtain this version for experimental features or for development:
git clone https://github.com/eptalights/eptalights-python.git
cd eptalights-python
pip install -e ".[dev]"To run tests and styling checks:
pytest
flake8 src tests
black --check src testsWe use the Sphinx framework. The documentation source files are in docs/.
The public documentation is accessible at https://eptalights.readthedocs.io/en/latest/.
The doc build is configured by .readthedocs.yaml.
To build the documentation locally (for testing and development),
install the full doc-related dependencies: pip install -r docs/requirements.txt,
then run sphinx-build -b html docs/ docs/build/.
See CONTRIBUTING.md for information about contributing to this project.
See LICENSE for details.