Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Master Plan #1

Open
5 of 17 tasks
shogochiai opened this issue Apr 9, 2024 · 0 comments
Open
5 of 17 tasks

Master Plan #1

shogochiai opened this issue Apr 9, 2024 · 0 comments

Comments

@shogochiai
Copy link
Contributor

I'm planning to build a centralized light-weight indexer for meta contract frontend devs.

It helps...

  • to fetch all data from contract storage
  • to index them to an indexing server
  • not to write AssemblyScript for indexer
  • not to write any handler and IPFS fetcher for indexer
  • not to write any schema file for indexer

It doesn't help...

  • to build advanced data stats (use Shadow and TheGraph)
  • to build ultra-scalable and decentralized indexer (use TheGraph)

It just make Solidity development faster and easier. Fail fast.

Requirement

  • Slot Extractor
    • Slot Calculator in Rust (ref)
      • Relative slot and offset by solc standard JSON interface
      • Layered calculation strategy to minimize on-the-fly RPC connection with iterable from-to info.
    • Slot Extractor written in Rust
      • Slot Extractor PoC written in Typescript (link)
    • TextDAO bundle deployment in Solidity (link)
    • Test Data Filler in Solidity (link)
  • Events
    • Event Emitter in the ERC-7456 Proxy (with sender, timestamp, and calldata info) in Solidity
    • Event Listener with NestJS
  • GraphDB
    • Setup Seaography
    • Auto-generate SQLite schema from Schema.sol (Need some type-casting) in Rust
    • Entity-Document-Field Specifier (EDFS) diff updater in Rust and SQLite
      • Diff checker query for each EDFS in Rust
      • Mutation query for diff-found EDFS in Rust
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant