An open source platform for inter-operable smart contracts which automatically execute

CHT

❗️ For issue disclosure, check out SECURITY.md ❗️

Juno is an open source platform for inter-operable smart contracts which automatically execute, control or document a procedure of events and actions according to the terms of the contract or agreement to be valid and usable across multiple sovereign networks.

Juno is a sovereign public blockchain in the Cosmos ecosystem. It aims to provide a sandbox environment for the deployment of such inter-operable smart contracts. The network serves as a decentralized, permissionless, and censorship resistant zone for developers to efficiently and securely launch application specific smart contracts. Developers can leverage proven frameworks and compile code in various languages, like Rust & Go with the potential future addition of C and C++. Battle-tested contract modules such as CosmWasm will allow for decentralized applications (dApps) to be compiled as robust and secure multi-chain smart contracts. EVM support and additional specialized modules can be introduced after genesis subject to onchain governance.

At the heart of Cosmos is the Inter Blockchain Communication Protocol (IBC), which sets the table for an inter-operable base layer 0 that can be used to transfer data packets across thousands of independent networks supporting IBC. Naturally, the next evolutionary milestone is to enable cross-network smart contracts.

The Juno blockchain is built using the Cosmos SDK framework. Cosmos SDK is a generalized framework that simplifies the process of building secure blockchain applications on top of Tendermint BFT. It is based on two major principles: Modularity and capabilities-based security.

Agreement on the network is reached via Tendermint BFT consensus.

Tendermint BFT is a solution that packages the networking and consensus layers of a blockchain into a generic engine, allowing developers to focus on application development as opposed to the complex underlying protocol. As a result, Tendermint saves hundreds of hours of development time.

Juno originates from a community driven initiative, prompted by developers, validators and delegators in the Cosmos ecosystem. The common vision is to preserve the neutrality, performance, and reliability of the Cosmos Hub. This is achieved by offloading smart contract deployment to a dedicated sister Hub. Juno plans to make an early connection to the Cosmos Hub enabling IBC transfers, cross-chain smart contracts and shared security.

A decentralized launch of the Juno main-net was enabled by a large set of independent validators from across the blockchain space. $JUNO, the native asset, has many functions like securing the Juno Hub and serving as a work token to give access to on-chain governance voting rights and to provide utility in the deployment and execution of smart contracts.

What differentiates JUNO from other Smart Contract networks?

⚪️ Interoperable smart contracts

⚪️ First mover advantage

⚪️ Open source

⚪️ Permissionless

⚪️ Modular

⚪️ Wasm + (EVM)

⚪️ Compilation in multiple languages Rust & Go (C,C++)

⚪️ Highly scalable

⚪️ Ease of use/developer ergonomics

⚪️ Free & fair asset distribution (100% to staked atom only)

⚪️ Onchain governance

⚪️ Balanced governance (Zero top heavy control)

⚪️ Grass roots community

⚪️ Decentralized

c22

Tokenomics & reward shedule (updated on 24.07.2021)

⚪️ Ticker: JUNO

⚪️ Decimals: 6

⚪️ Unit: uJuno

⚪️ Supply: Snapshot of Cosmoshub-3 at 06:00 PM UTC on Feb 18th 2021

⚪️ Rewards: Fixed yearly reward schedule (Reward model below)

⚪️ Community pool tax: 5% of block rewards

Circulating supply at genesis 64.903.243 $JUNO (64.9 Million)

Max supply (After year 12): 185.562.268 JUNO (185.5 Million)

Supply Breakdown

⚪️ Stakedrop: 30.663.193 $JUNO

⚪️ Community Pool: 20.000.000 $JUNO

⚪️ Development Reserve (Multi-sig): 11.866.708 $JUNO

⚪️ Smart Contract Challenges: 2.373.341 $JUNO

Genesis Distribution

A 1:1 stakedrop is allocated to $ATOM stakers, giving the $JUNO genesis supply to staked $ATOM balances that had their assets bonded at the time of the Stargate snapshot on Feb. 18th 6:00 PM UTC. Addresses that qualify are included in the JUNO genesis block at launch. All exchange validators & their delegators are excluded from the genesis allocation. Additionally any unbonded ATOM at the time of the snapshot is excluded. A whale cap was voted in by the community, effectively hard-capping $ATOM accounts at 50 thousand $ATOM in order to ensure a less top heavy allocation. Approx 10% of the supply difference is allocated to the development reserve (multi-sig) address for the funding of core-development efforts. The remaining 90% of the excess supply to be allocated in the following ways (20 million $Juno community pool, Smart contract competition 2.373.341,66 million to be managed/distributed by the multi-sig committee. The remaining difference will not be included in the genesis file ie. burned)

Reward Schedule

⚪️ Phase 1: Fixed inflation 40%

New Juno in year 1 = (+25.961.297)

Supply after year 1 = 90.864.540 $JUNO

⚪️ Phase 2: Fixed inflation 20%

New Juno in year 2 = (+18.172.908)

Supply after year 2 = 109.037.449 JUNO

⚪️ Phase 3: Fixed inflation 10%

New Juno in year 3= (+10.903.744)

Supply after year 3 = 119.941.194 JUNO

Once the inflation reaches 10% it gradually reduces on a fixed 1% basis each year.

⚪️ Phase 4 = Fixed 9% (+10.794.707) Supply = 130.735.901 JUNO

⚪️ Phase 5 = Fixed 8% (+10.458.872) Supply = 141.194.773 JUNO

⚪️ Phase 6 = Fixed 7% (+9.883.634) Supply = 151.078.407 JUNO

⚪️ Phase 7 = Fixed 6% (+9.064.704) Supply = 160.143.112 JUNO

⚪️ Phase 8 = Fixed 5% (+8.007.155) Supply = 168.150.267 JUNO

⚪️ Phase 9 = Fixed 4% (+6.726.010) Supply = 174.876.278 JUNO

⚪️ Phase 10 = Fixed 3% (+5.246.288) Supply = 180.122.566 JUNO

⚪️ Phase 11 = Fixed 2% (+3.602.451) Supply = 183.725.018 JUNO

⚪️ Phase 12 = Fixed 1% (+1.837.250) Supply = 185.562.268 JUNO

JUNO MAX SUPPLY (185.5 Million)

After year 12 the inflation reward schedule ends. Network incentives would primarily come from smart contract usage and regular tx fees generated on the network.

Juno is a blockchain built using Cosmos SDK and Tendermint and created with Starport.

Get started

If you have Docker installed, then you can run a local node with a single command.

This assumes you will connect to it via junod from outside the container. You could also use docker exec, if you prefer, which eliminates the need to

  1. Open two terminal tabs at the root of this repo.
  2. In tab one, build and run Juno in blocking mode: ./scripts/build_and_run_blocking.sh. Once it has compiled, you should see blocks appearing.

Option 1: Using Docker

  1. Switch to tab two and exec into the container: docker exec -it juno-local /bin/sh
  2. Run junod status. You should see JSON status for the Juno node running in Docker.

Option 2: Using junod (advanced/dev use)

  1. Switch to tab two and build juno outside the container if you haven't already: make build && make install.
  2. Run junod status. You should see JSON status for the Juno node running in Docker.

The RPC port for Juno is forwarded to your host, so as long as Docker is correctly set up, you can send it commands via the Juno binary, junod on your host.

Protip: running this script is also a decent sense-check that:

  1. The build is still working
  2. The Docker build is still working
  3. The code is in a runnable state

Learn more

cht

cht

Similar Resources

CLI client (and Golang module) for deps.dev API. Free access to dependencies, licenses, advisories, and other critical health and security signals for open source package versions.

CLI client (and Golang module) for deps.dev API. Free access to dependencies, licenses, advisories, and other critical health and security signals for open source package versions.

depsdev CLI client (and Golang module) for deps.dev API. Free access to dependencies, licenses, advisories, and other critical health and security sig

May 11, 2023

Automatically load up your Protobuff generated Golang types into the Protobuff registry

Automatically load up your Protobuff generated Golang types into the Protobuff registry (from the generated code), so that you can lookup by name of Protobuff message type.

Apr 20, 2022

A scanner/exploitation tool written in GO, which leverages Prototype Pollution to XSS by exploiting known gadgets.

A scanner/exploitation tool written in GO, which leverages Prototype Pollution to XSS by exploiting known gadgets.

ppmap A simple scanner/exploitation tool written in GO which automatically exploits known and existing gadgets (checks for specific variables in the g

Jan 9, 2023

evilginx2 is a man-in-the-middle attack framework used for phishing login credentials along with session cookies, which in turn allows to bypass 2-factor authentication protection.

evilginx2 is a man-in-the-middle attack framework used for phishing login credentials along with session cookies, which in turn allows to bypass 2-factor authentication protection.

evilginx2 is a man-in-the-middle attack framework used for phishing login credentials along with session cookies, which in turn allows to bypass 2-fac

Nov 4, 2021

Govuln - How to patch a vulnerability indirectly lifted into a Go Lang application in a manner which satsfies Twistlock scanning

govuln Desire to learn how to patch a vulnerability indirectly lifted into a Go

Feb 2, 2022

Gryffin is a large scale web security scanning platform.

Gryffin (beta) Gryffin is a large scale web security scanning platform. It is not yet another scanner. It was written to solve two specific problems w

Dec 27, 2022

✒ A self-hosted, cross-platform service to sign iOS apps using any CI as a builder

✒ A self-hosted, cross-platform service to sign iOS apps using any CI as a builder

iOS Signer Service A self-hosted, cross-platform service to sign iOS apps using any CI as a builder Introduction There are many reasons to install app

Jan 7, 2023

Package for controlling the Windows firewall (aka Windows Filtering Platform, WFP)

wf What This is a package for controlling the Windows Filtering Platform (WFP), also known as the Windows firewall. See its docs: https://godoc.org/in

Dec 6, 2022

A web-based testing platform for WAF (Web Application Firewall)'s correctness

WAFLab 🐾 WAFLab is a web-based platform for testing WAFs. Live Demo https://waflab.org/ Architecture WAFLab contains 2 parts: Name Description Langua

Oct 25, 2022
Related tags
mesh-kridik is an open-source security scanner that performs various security checks on a Kubernetes cluster with istio service mesh and is leveraged by OPA (Open Policy Agent) to enforce security rules.
mesh-kridik is an open-source security scanner that performs various security checks on a Kubernetes cluster with istio service mesh and is leveraged by OPA (Open Policy Agent) to enforce security rules.

mesh-kridik Enhance your Kubernetes service mesh security !! mesh-kridik is an open-source security scanner that performs various security checks on a

Dec 14, 2022
SingularityCE is the Community Edition of Singularity, an open source container platform designed to be simple, fast, and secure.

SingularityCE Guidelines for Contributing Pull Request Template Project License Documentation Support Citation SingularityCE is the Community Edition

Jan 5, 2023
This is simple repositry use to detect which port is open. It is a custom tool built in GO LANG.

dynamic-port-scanning-in-GO-lang This is simple repositry use to detect which port is open. It is a custom tool built in GO LANG. This is CUSTOM tool

Jan 25, 2022
A Smart Log4Shell/Log4j/CVE-2021-44228 Scanner

Log4Shell Sentinel - A Smart CVE-2021-44228 Scanner Introduction While there have some excellent tools released to help organizations scan their envir

Oct 29, 2022
DockerSlim (docker-slim): Don't change anything in your Docker container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)
DockerSlim (docker-slim): Don't change anything in your Docker container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)

Minify and Secure Docker containers (free and open source!) Don't change anything in your Docker container image and minify it by up to 30x making it

Dec 27, 2022
Open Source Web Application Firewall
Open Source Web Application Firewall

DEPRECATED This repository started as a good idea but I didn't have enough time or desire to work on it. So, it's left here for historical / education

Nov 24, 2022
A Go Module to interact with Passbolt, a Open source Password Manager for Teams

go-passbolt A Go Module to interact with Passbolt, a Open source Password Manager for Teams This Module tries to Support the Latest Passbolt Community

Oct 29, 2022
BluePhish: Open-Source Phishing Toolkit (Direct Fork of GoPhish)
BluePhish: Open-Source Phishing Toolkit (Direct Fork of GoPhish)

BluePhish BluePhish: Open-Source Phishing Toolkit (Direct Fork of GoPhish) Gophish is an open-source phishing toolkit designed for businesses and pene

Jun 1, 2022
Gitrob: Putting the Open Source in OSINT
 Gitrob: Putting the Open Source in OSINT

Gitrob: Putting the Open Source in OSINT Gitrob is a tool to help find potentially sensitive files pushed to public repositories on Github. Gitrob wil

Dec 28, 2022