GithubHelp home page GithubHelp logo

berachain / polaris Goto Github PK

View Code? Open in Web Editor NEW
1.1K 54.0 331.0 28.96 MB

Polaris is a modular implementation of the Ethereum Virtual Machine (EVM). It can be easily integrated into any consensus engine or application, including the Cosmos-SDK.

Home Page: https://polaris.berachain.dev/

License: Other

Go 85.22% Shell 5.46% Solidity 6.16% Dockerfile 0.93% Makefile 1.29% Io 0.80% JavaScript 0.14%
cosmos ethereum evm go defi blockchain golang mev web3

polaris's Issues

feat(evm): Transaction Flow + Ante Handler + Mempool

We want to try and avoid the double ante handler sheninigans we have seen in the past and to do so, as we build out a proto Message to transport an ethereum payload, we need to think about how that piece of data can go through Ante Handlers in a way that reduces duplicate code and "copy pasta'ing" from the SDK as much as possible.

┆Issue is synchronized with this Asana task by Unito

Postgres Infrastructure

  • Migration Scripts / Handlers for containerized
  • Docker-Compose Infrastructure
  • Database / gRPC abstraction for building endpoints without needing to configure / add any "redis or postgres" code to endpoints. "Generalized caching"

JSON-RPC Server

###Description:

As part maintaing full evm compatibility and making sure web3 wallets work, we need to handle JSON-RPC.

Todos

Resources / Libraries to look at:

  • Determine Architecture
  • ....

┆Issue is synchronized with this Asana task by Unito

epic(evm): ERC20 Middleware

Description:

Create a middleware system to allow for ERC20 and ICS20 tokens to seemlessly interoperable.

Functional Requirements

  • Token starts as ERC20 -> Handle escrowing and minting a native denominated balance.
  • Token starts as ICS20 -> Handle deploy of a "BankModuleERC20".
  • Handle precompile interop logic.

Todos:

┆Issue is synchronized with this Asana task by Unito

Core EVM

Components

  • Virtual Machine
  • Interpreter
  • StateDB
  • Precompile Infrastructure

┆Issue is synchronized with this Asana task by Unito

Cannot propagate Cosmos errors as Ethereum errors

Cosmos module errors are not typed, only returned as error, which only has a Error() string function.

Because these strings are arbitrary and filled with context-specific parameters, we cannot map these Cosmos errors to corresponding Ethereum events, that Ethereum app devs can use.

Blocked on getting Typed Errors in the SDK.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.