Aleph Zero - LlamaPredict - Prediction Market

https://llama-predict.vercel.app

Inspiration

Robin Hanson and his research on prediction markets

As for the mascot - llamas are majestic, fluffy animals and they can be quite unpredictable

What it does

Provides a trading square for all information game enthusiasts.

Have better information than other participants? Predict.

Want to know what are the odds of Bitcoin reaching new ATH next month? Watch.

Integrate smart contracts with Prediction infrastructure to build grand strategies.

How we built it

By converting coffee and snacks into brain-fuel ;)

Tech stack

  • Rust with ink! smart contracts
  • Typescript and Vue.js for the frontend

Challenges we ran into

AlephZero by using a very new and innovative technology let us in on a whole bunch of troubles. There is much unknown with a lot of encoding/compilation issues and many are not quite obvious. Fortunately we were able to solve a lot of them

Accomplishments that we're proud of

We believe our project utilises most of ink! features and hence can help new developers get accustomed to the ecosystem. Our whole technological stack makes no compromises and we solved our problems without using crazy workarounds.

Calling conventions/decoding/encoding

It's not always obvious how to encode and decode values across ink! (Rust) and frontend (JS). We were able to successfully accomplish every single goal we had in regard to storage/queries. Our app processes complex data and with meticulously crafted system of queries we are able to produce a convenient and high performance product.

Guide for solving compilation errors

  1. ERROR: Loading original WASM failed: Unknown opcode 192
    1. Your toolchain is too new - use rustc 1.69
    2. rustup default 1.69 if need be - rustup toolchain install 1.69
    3. Or cargo +1.69 contract build —release
  2. Duplicate lang item in X
    1. Each dependency MUST disable default features ex.:
    2. psp22 = { version = "0.2.1" , default-features = false, features = ["ink-as-dependency"] }

What we learned

Much about systems architecture.

We've had many intriguing thoughts about framework and language design problems.

What's next for LlamaPredict

Information trading strategies with non-linear model, leveraged predictions, even prettier UI

Built With

  • alephzero
  • ink!
  • polkadot
  • rust
  • vue.js
Share this project:

Updates