Awesome
Overview
Ape Framework is an easy-to-use Web3 development tool. Users can compile, test, and interact with smart contracts all in one command line session. With our modular plugin system, Ape supports multiple contract languages and chains.
Ape is built by ApeWorX LTD.
Join our ApeWorX Discord server to stay up to date on new releases, plugins, and tutorials.
If you want to get started now, see the Quickstart section.
Documentation
Read our technical documentation to get a deeper understanding of our open source Framework.
Read our academic platform will help you master Ape Framework with tutorials and challenges.
Prerequisite
In the latest release, Ape requires:
- Linux or macOS
- Python 3.9 up to 3.12
- Windows: Install Windows Subsystem Linux (WSL)
Check your python version in a terminal with python3 --version
.
Installation
There are three ways to install ape: pipx
, pip
, or Docker
.
Considerations for Installing
-
If using
pip
, we advise using the most up-to-date version ofpip
to increase the chance of a successful installation.- See issue https://github.com/ApeWorX/ape/issues/1558.
- To upgrade
pip
from the command line, run:pip install --upgrade pip
.
-
We advise installing in a virtualenv or venv to avoid interfering with OS-level site packages.
-
We advise installing
ape
with recommended pluginspip install eth-ape'[recommended-plugins]'
. -
We advise for macOS users to install virtual env via homebrew.
Installing with pipx
or pip
-
Install
pipx
via their installation instructions orpip
via their installation instructions. -
Install
ape
viapipx install eth-ape
orpip install eth-ape
.
Installing with docker
Ape can also run in a docker container.
You can pull our images from ghcr.
This image is built using our recommended-plugins
extra, so it is a great starting point for running ape in a containerized environment.
We also have a slim
docker image that is built without any installed plugins.
This image is meant for production support and must be further configured if any plugins are in use.
You can pull the image:
$ docker pull ghcr.io/apeworx/ape:latest # installs with recommended-plugins
or pull the slim if you have specific needs that you'd like to build from:
$ docker pull ghcr.io/apeworx/ape:latest-slim # installs ape with required packages
or build the image locally from source:
$ docker build -t ape:latest-slim -f Dockerfile.slim .
$ docker build -t ape:latest .
An example of running a command from the container would be:
docker run \
--volume $HOME/.ape:/home/harambe/.ape \
--volume $HOME/.vvm:/home/harambe/.vvm \
--volume $HOME/.solcx:/home/harambe/.solcx \
--volume $PWD:/home/harambe/project \
apeworx/ape compile
Note: The above command requires the full install which includes
recommended-plugins
installation extra.
Quickstart
After you have installed Ape, run ape --version
to verify the installation was successful.
Interact with Ape using either the CLI or Python code.
See the following user-guides for more in-depth tutorials:
Plugin System
Ape's modular plugin system allows users to have an interoperable experience with Web3.
-
Learn about installing plugins from following this installing user guide.
-
Learn more about developing your own plugins from this developing user guide.
If a plugin does not originate from the [ApeWorX GitHub Organization](https://github.com/ApeWorX?q=ape&type=all), you will get a warning about installing 3rd-party plugins.
Install 3rd party plugins at your own risk.