Open ra0x3 opened 1 year ago
/scripts
for complete local dev set up
@rvmelkonian
@deekerno @rvmelkonian I would be super interested in seeing if we can get "Investigate tooling for creating indices in TypeScript (probably more of a research project)" on the next milestone
GraphQL schema -> TS
)hello-world-ts
exampleThoughts?
Thoughts?
I'm down to try it out as it's been percolating in the back of my mind for a few months now. My biggest concern is how much of a difference there is between AssemblyScript and TypeScript since they're technically not the same and I'm not sure what subset of TS is contained in AS. Nevertheless, I'm down to see what comes out of it.
Thoughts?
I think this would be really useful tooling as most eth web3 devs are used to used to using Subgraphs for querying their contracts, which is all TS. I don't think we would need AssemblyScript though as we could should do GraphQL schema -> TS -> RustIngest -> Wasm
?
What would be the flow here? Could a user write out their whole indexer in TS?
I think this would be really useful tooling as most eth web3 devs are used to used to using Subgraphs for querying their contracts, which is all TS. I don't think we would need AssemblyScript though as we could should do
GraphQL schema -> TS -> RustIngest -> Wasm
?
What's RustIngest
? Never heard of it and I can't seem to find anything about it.
What would be the flow here? Could a user write out their whole indexer in TS?
When I originally pitched it, my thought was that a user that knows TS but not Rust could write their index, compile it to WASM, and deploy it to the indexer service as they would with any Rust-based WASM module.
RustIngest
is a word I just made up, sorry for the time you spent googling this! It was just a placeholder for: some code that could "Ingest" the TS code, convert it to rust, execute in Rust, creating the WASM binary. If we don't have this Rust conversion and execution, then yes I think we would need to use AssemblyScript, but that seems like a major unknown.
What is this?
Is this list final?
Ideas
[x] More advanced block explorer backend functionality
[ ] #749
contracts/
folder of an index project[ ] Public vs Private indices
[x] Support authentication
[x] Native execution
[x] Indexer playground
[x] Indexer constraints
[ ] Indexer migrations
[ ] Create an indexer registry
[ ] Websockets
[ ] Extend the FFI
load
andsave
filter
in order to retrieve several entities of the same typeT
matching certain criteria[ ] NoSQL support
[ ] Integrate with
fuel-core
TX pool[ ] Investigate tooling for creating indices in TypeScript (probably more of a research project)
fuels-ts
to allow for indexing upon Fuel typesfuels-ts
already does something similar when generating types from contract ABIs[ ] Consider adding advanced filtering capabilities to GraphQL API
WHERE X = Y
.fuel-core
)[ ] Create a GUI for simple interface
[ ] Create contract callpath(s) via contract ABI