Skip to main content

Plugin for Ape Ethereum Framework for compiling Vyper contracts

Project description

Quick Start

Ape compiler plugin around VVM

Dependencies

  • python3 version 3.8 or greater, python3-dev

Installation

via pip

You can install the latest release via pip:

pip install ape-vyper

via setuptools

You can clone the repository and use setuptools for the most up-to-date version:

git clone https://github.com/ApeWorX/ape-vyper.git
cd ape-vyper
python3 setup.py install

Quick Usage

First, place Vyper contract source files (files with extension .vy) in your Ape project's contracts folder. An example Vyper contract can be found here. Then, from your root Ape project folder, run the command:

ape compile

The .vy files in your project will compile into ContractTypes that you can deploy and interact with in Ape.

Interfaces

You can not compile interface source files directly. Thus, you must place interface files in a directory named interfaces in your contracts_folder e.g. contracts/interfaces/IFace.vy. Then, these files can be imported in other .vy sources files via:

import interfaces.IFace as IFace

Alternatively, use JSON interfaces from dependency contract types by listing them under the import_remapping key:

# Use `voting` example contracts from Vyperlang repo.
dependencies:
  - name: VyperVoting
    github: vyperlang/vyper
    contracts_folder: examples/voting/
    version: v0.3.8

# Automatically allow importing voting contracts in your project.
vyper:
  import_remapping:
    - "voting=VyperVoting@v0.3.8"

Import the voting contract types like this:

# @version 0.3.8

import voting.ballot as ballot

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ape-vyper-0.6.7.tar.gz (32.7 kB view details)

Uploaded Source

Built Distribution

ape_vyper-0.6.7-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file ape-vyper-0.6.7.tar.gz.

File metadata

  • Download URL: ape-vyper-0.6.7.tar.gz
  • Upload date:
  • Size: 32.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for ape-vyper-0.6.7.tar.gz
Algorithm Hash digest
SHA256 b86d7f86d7a08149b2a9f8299bb1c94a378c9af8f9ef2c79d60732fc9bb31601
MD5 a25bfe5106308a77d54d6d014c96361b
BLAKE2b-256 69c6e8a6d4332dc86be1ce52f2ad9f926346f3e42a583cb91cc4bbc8ae29f67c

See more details on using hashes here.

File details

Details for the file ape_vyper-0.6.7-py3-none-any.whl.

File metadata

  • Download URL: ape_vyper-0.6.7-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for ape_vyper-0.6.7-py3-none-any.whl
Algorithm Hash digest
SHA256 eae6d71e95e4995140a3f66cfb9c1ce2c3cf674ce2c0d6bccff19fea36f3c3c3
MD5 3ea135e6d049c1958117740eec3e7dbf
BLAKE2b-256 cb3b4cf369a7bf6ec6c05f7122e454f62701d318c45c64cb4c20362eae2e9a40

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page