Skip to content

hsyodyssey/helios-mobi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Helios-mobi

Introduction

  • This repository aims to build a Kotlin wrapper SDK for Helios light client used for Android via JNI.
  • This repository is a preliminary project for a universal light client project: a cross-platform light client library for all EVM-based chains (including L1 and L2 chains, such as Ethereum Mainnet, BSC, Tron, Scroll, and MegaETH).
  • This repository is still under development and is not ready for any production-level projects.
  • In addition, we are also willing to test more interesting experimental tests via this repo, like intergrating Helios with local LLMs.
  • This repo is open-sourced via MIT license.

TODO

High Priority

  • Task 1: Fix: consensus client constructing failed problem: refactor Helios-Rust
    • Sub-Task 1: Feat: decouple the consensus client create and sync fucntion.
  • Task 2: Feat: JNI Interface for Android(Rust + Kotlin)
  • Task 3: Feat: Support getting block data via any block number. The current Helios library seems to only support the Latest block and Finalized block based on latest epoch.
    • Sub-Task 1: Feat: We need modify and add more functions to Helios consensus-inner part.
    • Sub-Task 2: Docs: We will write a detailed blog about the mechanism about how helios works.
  • Task 4: Automation: Auto Sync the latest checkpoints
  • Task 5: High-availability: how to guarantee the high avaliable network connection via weak mobile net env

Current Problem

Helios is a powerful library that is still under development. There are many unexpected issues when using it as an external library for Android. Here are several issues we have faced:

The programs will be crashed when generating a new Client.

  1. Inappropriate default absolute address. This issue causes by the following code snippets:
  1. Failed in constructing new Node(ConsensusClient). This failure happens in the following code snippet:
  1. Client synced failed. client.wait_synced().await; The client syncing process is killed by JVM for unknown reasons.

  2. Unstable Mobile network issue.

About

Helios-mobi: Helios Kotlin wrapper with some experimental features

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors