I want to know if there’s a way to integrate with a Algorand projects’ smart contracts? Cannot find a detailed explanation about it.
I watched this explanation about the ABI from Jason Weathersby: Decipher | Understanding the ABI - YouTube and, as I understood, the only way to integrate with smart contract is either read pyTeal/Teal contract and know which function to trigger, or read them (anyways) and write JSON artifacts (Method/Interface/Class) to have an ABI-like object with all contract’s functions and parameters. Is there a way to get this auto-generated, similar to Ethereum (so I could deploy a contract and get ABI auto-generated for me)? If not, otherwise, how can a user integrate without actually reading a contract?
We just finished up the base ABI which is basically a way (in JSON) for a smart contract creator to describe the contract. Without this users of the contract have to read the contract code. The SDK now has support for reading these ABI JSON files and invoking the method. That said, giving out or publically posting the JSON is still up to the contract creator. ARC4 is the ABI spec and is just the beginning and should be a standard that other standards are built on. In addition, we are looking at ways to provide a publically available repo of ABI JSON files for other projects to use to call the contract. These files will additionally need a way to verify that the JSON reflects what’s really in the contract and that the contract has not been altered. We are definitely looking at these other capabilities. We had to get the base ABI done first though.