Hi, I’m a college student working on a project making applications utilizing Zcash!
I want to read all transactions from a view key going forward after a blockchain height similar to Zcash Viewing Key.
Then I want to use that info to calculate the money earned and spent for each individual project looking into shielded addresses for each project.
I think the best way to do this is by creating a light node and running it on the cloud, then getting the information from that but I am here looking for advice on how I can do this in a more simple / cost efficient manner!
I also am looking for advice on how to set up a light node or full node, since I haven’t done this before.
You don’t need to run your own server to be able to do that. Simply import a viewing key into a supporting wallet like Ywallet or Zkool and scan the chain from the specific height. Interacting with whatever wallet you choose to acquire the data is something that you’ll have to fiddle with to automate, if thats your intention.
In Zkool, to show the unified full viewing key for an account, select the account icon, select the edit button and select the icon. You can de-select which receivers (address types) the view key works for. Ywallet is similar with seeds and keys option and show sub-keys button.
zingo-cli has the parse_viewkey command zenithserver has the importvk command zcash-devtool has the import-ufvk command
I would recommend a local full node + lwd (or zainod) since you don’t have to purchase a server in the cloud, and get a working solution going. You also dont want to import vk’s into a random node you dont control unless you consent to that
You can use a CLI like ZingoLib or zcash-dev tool.
If you want to depend on a single view key you can assign an account per project you want to track. You can use the CLI as a backend of your website as a proof of concept. what way you don’t have to run your own full node and just use a testnet lightwalletd server instead.
I am currently using the Docker instructions from zebrad to try testing a full node on my laptop. I don’t know how sustainable it is to just use my personal laptop and try to keep this running but hopefully this sync will finish in the next two days or so and then I’ll be able to utilize the information gained in my project!
You can run a full node if you want, but if your primary goals are to interact with the chain from the command line, I would second @pacu’s suggestion to try out zcash_devtool. In particular, you might want to go through the walkthrough to familiarize yourself with interacting with the chain. I recommend starting out playing around on testnet first; just let me know if you need me to send you some TAZ to play around with once you have a devtool wallet set up.
There’s also a video tutorial for the devtool walkthrough here.