[![Pypi.org][pypi-badge]][pypi-url]
[![Apache licensed][licence-badge]][licence-url]
[![Build Status][actions-badge]][actions-url]
[![Discord chat][discord-badge]][discord-url]
[![Twitter][twitter-badge]][twitter-url]
# Overview
[Ape Framework](https://apeworx.io/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](#plugin-system), Ape supports multiple contract languages and chains.
Ape is built by [ApeWorX LTD](https://www.apeworx.io/).
Join our [ApeWorX Discord server][discord-url] to stay up to date on new releases, plugins, and tutorials.
If you want to get started now, see the [Quickstart](#quickstart) section.
## Documentation
Read our [technical documentation](https://docs.apeworx.io/ape/stable/) to get a deeper understanding of our open source Framework.
Read our [academic platform](https://academy.apeworx.io/) 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)](https://docs.microsoft.com/en-us/windows/wsl/install)
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 of `pip` 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](https://pypi.org/project/virtualenv/) or [venv](https://docs.python.org/3/library/venv.html) to avoid interfering with *OS-level site packages*.
- We advise installing **`ape`** with recommended plugins `pip install eth-ape'[recommended-plugins]'`.
- We advise for **macOS** users to install virtual env via [homebrew](https://formulae.brew.sh/formula/virtualenv).
### Installing with `pipx` or `pip`
1. Install `pipx` via their [installation instructions](https://pypa.github.io/pipx/) or `pip` via their [installation instructions](https://pip.pypa.io/en/stable/cli/pip_install/).
2. Install **`ape`** via `pipx install eth-ape` or `pip install eth-ape`.
### Installing with `docker`
Ape can also run in a docker container.
You can pull our images from [ghcr](https://ghcr.io/apeworx/ape).
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:
```bash
$ 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:
```bash
$ docker pull ghcr.io/apeworx/ape:latest-slim # installs ape with required packages
```
or build the image locally from source:
```bash
$ 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:
```bash
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](https://docs.apeworx.io/ape/latest/index.html) or [Python code](https://docs.apeworx.io/ape/latest/index.html).
See the following user-guides for more in-depth tutorials:
- [Accounts][accounts-guide]
- [Networks][networks-guide]
- [Projects][projects-guide]
- [Compiling][compile-guide]
- [Testing][testing-guide]
- [Console][console-guide]
- [Scripting][scripting-guide]
- [Logging][logging-guide]
## 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](https://docs.apeworx.io/ape/stable/userguides/installing_plugins.html).
- Learn more about **developing** your own plugins from this [developing user guide](https://docs.apeworx.io/ape/stable/userguides/developing_plugins.html).
```{note}
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.
```
[accounts-guide]: https://docs.apeworx.io/ape/stable/userguides/accounts.html
[actions-badge]: https://github.com/ApeWorX/ape/actions/workflows/test.yaml/badge.svg
[actions-url]: https://github.com/ApeWorX/ape/actions?query=branch%3Amain+event%3Apush
[compile-guide]: https://docs.apeworx.io/ape/stable/userguides/compile.html
[console-guide]: https://docs.apeworx.io/ape/stable/userguides/console.html
[discord-badge]: https://img.shields.io/discord/922917176040640612.svg?logo=discord&style=flat-square
[discord-url]: https://discord.gg/apeworx
[licence-badge]: https://img.shields.io/github/license/ApeWorX/ape?color=blue
[licence-url]: https://github.com/ApeWorX/ape/blob/main/LICENSE
[logging-guide]: https://docs.apeworx.io/ape/stable/userguides/logging.html
[networks-guide]: https://docs.apeworx.io/ape/stable/userguides/networks.html
[projects-guide]: https://docs.apeworx.io/ape/stable/userguides/projects.html
[pypi-badge]: https://img.shields.io/pypi/dm/eth-ape?label=pypi.org
[pypi-url]: https://pypi.org/project/eth-ape/
[scripting-guide]: https://docs.apeworx.io/ape/stable/userguides/scripts.html
[testing-guide]: https://docs.apeworx.io/ape/stable/userguides/testing.html
[twitter-badge]: https://img.shields.io/twitter/follow/ApeFramework
[twitter-url]: https://twitter.com/ApeFramework
Raw data
{
"_id": null,
"home_page": "https://apeworx.io",
"name": "eth-ape",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.9",
"maintainer_email": null,
"keywords": "ethereum",
"author": "ApeWorX Ltd.",
"author_email": "admin@apeworx.io",
"download_url": "https://files.pythonhosted.org/packages/cb/68/c8d1c041d3928392e9375810d966c8b423dde51ddf555a07732fa9cc18c5/eth-ape-0.8.20.tar.gz",
"platform": null,
"description": "[![Pypi.org][pypi-badge]][pypi-url]\n[![Apache licensed][licence-badge]][licence-url]\n[![Build Status][actions-badge]][actions-url]\n[![Discord chat][discord-badge]][discord-url]\n[![Twitter][twitter-badge]][twitter-url]\n\n# Overview\n\n[Ape Framework](https://apeworx.io/framework/) is an easy-to-use Web3 development tool.\nUsers can compile, test, and interact with smart contracts all in one command line session.\nWith our [modular plugin system](#plugin-system), Ape supports multiple contract languages and chains.\n\nApe is built by [ApeWorX LTD](https://www.apeworx.io/).\n\nJoin our [ApeWorX Discord server][discord-url] to stay up to date on new releases, plugins, and tutorials.\n\nIf you want to get started now, see the [Quickstart](#quickstart) section.\n\n## Documentation\n\nRead our [technical documentation](https://docs.apeworx.io/ape/stable/) to get a deeper understanding of our open source Framework.\n\nRead our [academic platform](https://academy.apeworx.io/) will help you master Ape Framework with tutorials and challenges.\n\n## Prerequisite\n\nIn the latest release, Ape requires:\n\n- Linux or macOS\n- Python 3.9 up to 3.12\n- **Windows**: Install Windows Subsystem Linux [(WSL)](https://docs.microsoft.com/en-us/windows/wsl/install)\n\nCheck your python version in a terminal with `python3 --version`.\n\n## Installation\n\nThere are three ways to install ape: `pipx`, `pip`, or `Docker`.\n\n### Considerations for Installing\n\n- If using `pip`, we advise using the most up-to-date version of `pip` to increase the chance of a successful installation.\n\n - See issue https://github.com/ApeWorX/ape/issues/1558.\n - To upgrade `pip` from the command line, run: `pip install --upgrade pip`.\n\n- We advise installing in a [virtualenv](https://pypi.org/project/virtualenv/) or [venv](https://docs.python.org/3/library/venv.html) to avoid interfering with *OS-level site packages*.\n\n- We advise installing **`ape`** with recommended plugins `pip install eth-ape'[recommended-plugins]'`.\n\n- We advise for **macOS** users to install virtual env via [homebrew](https://formulae.brew.sh/formula/virtualenv).\n\n### Installing with `pipx` or `pip`\n\n1. Install `pipx` via their [installation instructions](https://pypa.github.io/pipx/) or `pip` via their [installation instructions](https://pip.pypa.io/en/stable/cli/pip_install/).\n\n2. Install **`ape`** via `pipx install eth-ape` or `pip install eth-ape`.\n\n### Installing with `docker`\n\nApe can also run in a docker container.\n\nYou can pull our images from [ghcr](https://ghcr.io/apeworx/ape).\nThis image is built using our `recommended-plugins` extra, so it is a great starting point for running ape in a containerized environment.\n\nWe also have a `slim` docker image that is built without any installed plugins.\nThis image is meant for production support and must be further configured if any plugins are in use.\n\nYou can pull the image:\n\n```bash\n$ docker pull ghcr.io/apeworx/ape:latest # installs with recommended-plugins\n```\n\nor pull the slim if you have specific needs that you'd like to build from:\n\n```bash\n$ docker pull ghcr.io/apeworx/ape:latest-slim # installs ape with required packages\n```\n\nor build the image locally from source:\n\n```bash\n$ docker build -t ape:latest-slim -f Dockerfile.slim .\n$ docker build -t ape:latest .\n```\n\nAn example of running a command from the container would be:\n\n```bash\ndocker run \\\n --volume $HOME/.ape:/home/harambe/.ape \\\n --volume $HOME/.vvm:/home/harambe/.vvm \\\n --volume $HOME/.solcx:/home/harambe/.solcx \\\n --volume $PWD:/home/harambe/project \\\n apeworx/ape compile\n```\n\n> **Note:**\n> The above command requires the full install which includes `recommended-plugins` installation extra.\n\n## Quickstart\n\nAfter you have installed Ape, run `ape --version` to verify the installation was successful.\n\nInteract with Ape using either the [CLI](https://docs.apeworx.io/ape/latest/index.html) or [Python code](https://docs.apeworx.io/ape/latest/index.html).\n\nSee the following user-guides for more in-depth tutorials:\n\n- [Accounts][accounts-guide]\n- [Networks][networks-guide]\n- [Projects][projects-guide]\n- [Compiling][compile-guide]\n- [Testing][testing-guide]\n- [Console][console-guide]\n- [Scripting][scripting-guide]\n- [Logging][logging-guide]\n\n## Plugin System\n\nApe's modular plugin system allows users to have an interoperable experience with Web3.\n\n- Learn about **installing** plugins from following this [installing user guide](https://docs.apeworx.io/ape/stable/userguides/installing_plugins.html).\n\n- Learn more about **developing** your own plugins from this [developing user guide](https://docs.apeworx.io/ape/stable/userguides/developing_plugins.html).\n\n```{note}\nIf 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.\nInstall 3rd party plugins at your own risk.\n```\n\n[accounts-guide]: https://docs.apeworx.io/ape/stable/userguides/accounts.html\n[actions-badge]: https://github.com/ApeWorX/ape/actions/workflows/test.yaml/badge.svg\n[actions-url]: https://github.com/ApeWorX/ape/actions?query=branch%3Amain+event%3Apush\n[compile-guide]: https://docs.apeworx.io/ape/stable/userguides/compile.html\n[console-guide]: https://docs.apeworx.io/ape/stable/userguides/console.html\n[discord-badge]: https://img.shields.io/discord/922917176040640612.svg?logo=discord&style=flat-square\n[discord-url]: https://discord.gg/apeworx\n[licence-badge]: https://img.shields.io/github/license/ApeWorX/ape?color=blue\n[licence-url]: https://github.com/ApeWorX/ape/blob/main/LICENSE\n[logging-guide]: https://docs.apeworx.io/ape/stable/userguides/logging.html\n[networks-guide]: https://docs.apeworx.io/ape/stable/userguides/networks.html\n[projects-guide]: https://docs.apeworx.io/ape/stable/userguides/projects.html\n[pypi-badge]: https://img.shields.io/pypi/dm/eth-ape?label=pypi.org\n[pypi-url]: https://pypi.org/project/eth-ape/\n[scripting-guide]: https://docs.apeworx.io/ape/stable/userguides/scripts.html\n[testing-guide]: https://docs.apeworx.io/ape/stable/userguides/testing.html\n[twitter-badge]: https://img.shields.io/twitter/follow/ApeFramework\n[twitter-url]: https://twitter.com/ApeFramework\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Ape Ethereum Framework",
"version": "0.8.20",
"project_urls": {
"Documentation": "https://docs.apeworx.io/ape/",
"Funding": "https://gitcoin.co/grants/5958/ape-maintenance-fund",
"Homepage": "https://apeworx.io",
"Source": "https://github.com/ApeWorX/ape",
"Tracker": "https://github.com/ApeWorX/ape/issues",
"Twitter": "https://twitter.com/ApeFramework"
},
"split_keywords": [
"ethereum"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0fb48ef8376e922dd2bb02b7f6ed158bc4a93c28a4df4b5ff05d4a04c5d14260",
"md5": "928a09c50edc646f56b946a9e6b16702",
"sha256": "4da458c08482e0df6a7f400e00536aac60032fa25efd042ffd15b9e8ce32a6c1"
},
"downloads": -1,
"filename": "eth_ape-0.8.20-py3-none-any.whl",
"has_sig": false,
"md5_digest": "928a09c50edc646f56b946a9e6b16702",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.9",
"size": 379179,
"upload_time": "2024-11-07T19:44:00",
"upload_time_iso_8601": "2024-11-07T19:44:00.357305Z",
"url": "https://files.pythonhosted.org/packages/0f/b4/8ef8376e922dd2bb02b7f6ed158bc4a93c28a4df4b5ff05d4a04c5d14260/eth_ape-0.8.20-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cb68c8d1c041d3928392e9375810d966c8b423dde51ddf555a07732fa9cc18c5",
"md5": "99f7c2a85c20bfb3d892209a96b4c70f",
"sha256": "b4044a9490d35f6a5af52a105ce0d7bc2c968906831989b7906a9c2ce050582b"
},
"downloads": -1,
"filename": "eth-ape-0.8.20.tar.gz",
"has_sig": false,
"md5_digest": "99f7c2a85c20bfb3d892209a96b4c70f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.9",
"size": 1130640,
"upload_time": "2024-11-07T19:44:02",
"upload_time_iso_8601": "2024-11-07T19:44:02.179484Z",
"url": "https://files.pythonhosted.org/packages/cb/68/c8d1c041d3928392e9375810d966c8b423dde51ddf555a07732fa9cc18c5/eth-ape-0.8.20.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-07 19:44:02",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ApeWorX",
"github_project": "ape",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "eth-ape"
}