Package: apepay
ApePayA smart contract payment system built for automated service managementAboutSee theblog postto learn more about ApePay!DocumentationComing soon!ContributingApePay is open source and we welcome all contributors! Check out the following to get started.TODOs:Initial implementationDocumentationLive testing on SepoliaProduction deployment on ArbitrumFrontend management console, for managing subscriptionsSetup (Python)First,install ApeSecond, make sure to install the plugins:$apepluginsinstall.--upgradeNext, prior to installing the SDK package, you have to compile the project:$apecompileThe SDK package relies on a soft link in [`./sdk/py/apepay/manifest.json`](./sdk/py/apepay/manifest.json)Lastly, install the SDK package via:$poetryinstallThen you are ready to contribute!Setup (JS)In order to contribute to the JS SDK and React component library, or to build the demo app, you need to first follow thePython Setup instructionsto compile the smart contract package.Next, you need install the node packages for development:$npminstallIn order to work on the React component library, you need to compile the JS SDK:$npmrunbuild--workspace=sdk/jsIn order to work on the Demo app, you need to compile the JS SDK (like above) as well as compile the React component library:$npmrunbuild--workspace=ui/libThen you are ready to contribute!To run the demo app in development mode, do the following:$npmrundev--workspace=ui/appTo build the demo app for production, do the following:$npmrunbuild--workspace=ui/appTestingTo run tests, just use Ape:$apetestTo see gas usage, add the--gasflag:$apetest--gasScriptsTo deploy a StreamManager (for testing purposes), run:$aperundeploymanager[TOKEN_ADDRESS[...]]# Or if `ape tokens` is installed with a valid tokenlist$aperundeploymanager[TOKEN_SYMBOL[...]]To deploy the StreamFactory (for production use), run:$aperundeployfactoryTo deploy a Token (for testing use only), run:$aperundeploytokenThis test token has an unauthenticated mint, please do not use in production!To run the demo ApePay cluster daemon, first run a node likeanvil:$anvil--derivation-path"m/44'/60'/0'/"--block-time1--prune-historyNOTE: the--derivation-pathflag makes ape's test accounts match anvil'sThen run the daemon:$silverbackrunscripts.daemon:app--network::foundry--accountTEST::0After that, it's suggested to startape consoleand create a stream to watch the daemon reactPublishingGiven the monorepo structure, it's a bit more challenging to distribute all the packages in this repo.ContractsTBDPython SDKTo publish the Python package, there are 5 steps.# 1. Install everything$poetryinstall`# 2. Compile the package manifest$apecompile# 3. Copy the package manifest to the Python SDK folder$cp.build/__local__.jsonsdk/py/apepay/manifest.json# 4. Build the Python SDK with Poetry$poetrybuild# 5. Publish the package$poetrypublishNOTE: make sure to revision the package before publishing, or it will fail.Javscript SDK and React component libraryTo publish the JS SDK, do the following:# 1. Install everything$npminstall--all-workspaces# 2. Build SDK$npmrunbuild--workspace=sdk/js# 3. Publish SDK$npmpublish--workspace=sdk/jsNOTE: make sure to revision the package before publishing, or it will fail.TO publish the React Component library, do the same thing as the SDK exepct use theui/libworkspace.Demo App and Management ConsoleTBDLicenseApePay is licensedApache 2.0