Skip to content
This repository has been archived by the owner on Oct 25, 2024. It is now read-only.

Ideas for things we can work on 💡 #502

Open
5 of 19 tasks
ra0x3 opened this issue Jan 22, 2023 · 7 comments
Open
5 of 19 tasks

Ideas for things we can work on 💡 #502

ra0x3 opened this issue Jan 22, 2023 · 7 comments
Labels

Comments

@ra0x3
Copy link
Contributor

ra0x3 commented Jan 22, 2023

What is this?

  • We contribute to projects according to "Milestones"
  • Whilst contributing to those milestones, we sometimes have down time, or time that our top priority is blocked (for whatever reason)
  • It could be nice to have a list of feature ideas that we could work on if we're not actively contributing to a milestone
  • Further, it could even be the case where some of these ideas are considered during the creation of milestones

Is this list final?

  • Absolutely not
  • If you have any indexer-related ideas, feel free to add a feature/idea to this list using the same format of the ideas that have already been listed in the Ideas section.
  • Let's try to make sure that all ideas are actionable/workable - meaning they can be completed in some reasonable amount of time (e.g., 3 weeks)
    • You don't have to present a fully flushed out issue - as you can see, a number of the ideas below are just a few bullet points (with no accompanying issue)
      • If the feature/idea gets picked up - we can create a more specific/flushed-out issue at that time

Ideas

@ra0x3 ra0x3 added fuel-explorer This PR is directly related to the block explorer big idea labels Jan 22, 2023
@ra0x3 ra0x3 pinned this issue Jan 22, 2023
@0xmovses
Copy link
Contributor

0xmovses commented Feb 14, 2023

  • create a bash script inside /scripts for complete local dev set up
    • The script would spin up a fuel node, the indexer and / or the indexer-api (depending on flags).
    • It would output some nice ASCII art and some message for flags options.
    • This would give developers a pleasant experience and reduces the amount of commands needed for a full testing setup. (DB would have to be created before this step).

@ra0x3
Copy link
Contributor Author

ra0x3 commented Feb 16, 2023

@rvmelkonian

  • I think if we have the time we could use your idea ☝🏽 as an opportunity to get super creative
  • Like, dope, colorful ASCII art
  • Maybe something even interactive (like a step-through tutorial kinda thing)
  • That would not only be interesting for devs (your original use-case I believe) but more so for users (our main focus)

@ra0x3
Copy link
Contributor Author

ra0x3 commented Mar 7, 2023

@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

  • That wouldn't mean "it's totally possible we're 100% gonna do it"
  • More so it would mean, let's see if we can create a PoC and see what we're missing with regard to making something production ready
  • On a literal level, we would just create a PoC by writing the TS by hand
  • From there we would try to see what functionality can be abstracted away
  • We already have TS ABIGen, so we would just need to create TS-GraphQL-schema-gen (i.e., GraphQL schema -> TS)
  • Acceptance (whether PoC or full on production-ready implementation) can be a hello-world-ts example

Thoughts?

@deekerno
Copy link
Contributor

deekerno commented Mar 7, 2023

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.

@0xmovses
Copy link
Contributor

0xmovses commented Mar 7, 2023

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?

@deekerno
Copy link
Contributor

deekerno commented Mar 7, 2023

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.

@0xmovses
Copy link
Contributor

0xmovses commented Mar 8, 2023

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.

@ra0x3 ra0x3 removed the fuel-explorer This PR is directly related to the block explorer label May 8, 2023
@SilentCicero SilentCicero unpinned this issue Jul 28, 2023
@ra0x3 ra0x3 removed the idea label Aug 8, 2023
@ra0x3 ra0x3 pinned this issue Sep 20, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

3 participants