I am working on a prototype for a game client (think Steam, but using chia for payments). It is written in python and using Kivy for a gui.
What I would like to make is a simple, lightweight, Goby-like interface for my app that uses as much of chias light wallet code as possible. (in a way that will be easy to maintain and upgrade in the future) I have been digging through the chia-blockchain and chia-blockchain-gui repos trying to figure out how it all works and I could use some guidance.
What do I actually need to have a synced wallet with all of the features I would need?
Should I be trying to run the daemon, then basically copying what chia-blockchain-gui does by connecting and sending rpc messages? Or is there a better way that I could do it with an easier, python interface?
Is there any sample code that I should be looking at for this?
I would recommend trying to use the light wallet as a black box and communicating with it via RPCs like you identified the GUI does. There is a corresponding python client for every RPC interface, located in the same directory as the RPCs are located. You can just import chia-blockchain into your project, import that RPC client, write some code to start up the wallet and you’re in business.
Great! Thanks quexington, it’s starting to make a lot more sense now. (So just for anyone reading this in the future) To actually start up the wallet I use the ChiaServer class with NodeType.WALLET. That is the main entry point right? Then from there I can connect to it, and do pretty much everything through WalletRPCClient. That makes sense.