MESC is the Multiple Endpoint Shared Configuration Standard
Project description
Python MESC Implementation
This is a reference implementation of the Python MESC Standard
It has no external dependencies.
Installation
From PyPI
pip install mesc
From Source
git clone https://github/paradigmxyz/mesc
cd mesc
pip install ./
Example Usage
import mesc
# get the default endpoint
endpoint = mesc.get_default_endpoint()
# get the default endpoint of a network
endpoint = mesc.get_endpoint_by_network(5)
# get the default endpoint for a particular tool
endpoint = mesc.get_default_endpoint(profile='xyz_tool')
# get the default endpoint of a network for a particular tool
endpoint = mesc.get_endpoint_by_network(5, profile='xyz_tool')
# get an endpoint by name
endpoint = mesc.get_endpoint_by_name('local_goerli')
# parse a user-provided string into a matching endpoint
# (first try 1. endpoint name, then 2. chain id, then 3. network name)
endpoint = mesc.get_endpoint_by_query(user_str, profile='xyz_tool')
# find all endpoints matching given criteria
endpoints = mesc.find_endpoints(chain_id=5)
Reference
from typing import Any, MutableMapping, TypedDict, Literal, Sequence
class RpcConfig(TypedDict):
mesc_version: str
default_endpoint: str | None
endpoints: MutableMapping[str, Endpoint]
network_defaults: MutableMapping[str, str]
network_names: MutableMapping[str, str]
profiles: MutableMapping[str, Profile]
global_metadata: MutableMapping[str, Any]
class Endpoint(TypedDict):
name: str
url: str
chain_id: str | None
endpoint_metadata: MutableMapping[str, Any]
class Profile(TypedDict):
name: str
default_endpoint: str | None
network_defaults: MutableMapping[str, str]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mesc-0.1.1.tar.gz
(5.4 kB
view hashes)
Built Distribution
mesc-0.1.1-py3-none-any.whl
(7.1 kB
view hashes)