I think it will be best to open the code repository so that the latest version is always there for reference. I will discuss this with the team. But why do you want to create your own indexer instead of simply running a node with what we've already created?
Is it ready? What is hardware requirements? We already have indexer, for us it would be easier to add this change but if codebase is ready and stable, then we can run your code as well. It is not a big deal really.
OK, we can switch to author/permlink if that would indeed be easier.
From your examples, yes you can see that author permlink combination is easier regardless. That's why initial suggestion was to use that instead of transaction id.
The repository is now open, here it is: https://gitlab.com/peakd/hive-open-polls/-/tree/standalone (the
standalone
branch is where the most recent work is happening). It is currently functional. It's built as a HAF app which can run on a HAF server, or it can run on its own without needing HAF or hived.It not only indexes but also implements all the logic of the protocol, checks the validity of the poll to ensure it conforms to the protocol, allows post title and body updates but no changes to the poll question and choices, allows voting and changes/removal of votes but only up until the poll's end time (if specified), calculates the interpretation of results, checks for filters and filters out the accounts that don't meet the filter criteria, and so on. There are various pieces of logic which will grow as the protocol expands and more poll types are enabled (multi-choice, etc.).
The server requirements are extremely minimal, it is a super small app. 1GB of RAM would be plenty, and the app's docker image is something like 600MB.
Would you like to give it a test run?