Giter Site home page Giter Site logo

darathecreator / gear Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gear-tech/gear

0.0 0.0 0.0 84.98 MB

Web3 Ultimate Execution Engine

Home Page: https://gear-tech.io

License: GNU General Public License v3.0

Shell 4.28% Python 0.03% Rust 95.19% Makefile 0.14% Handlebars 0.19% Dockerfile 0.06% Jinja 0.12%

gear's Introduction

Gear

Gear is a Substrate-based smart-contract platform allowing anyone to run dApp in a few minutes.

CI GitHubStars Discord Twitter License

Hit the button to keep up with our daily progress!

Getting Started

  1. 👐 The easiest way to get started with Gear is to use a demo environment on https://idea.gear-tech.io.

  2. 🔧 Follow the instructions from "Getting started in 5 minutes" to compile the Rust test smart contract to WebAssembly. 🏃 Upload and run smart contract in Gear demo environment on https://idea.gear-tech.io, send a message to a program, check how it is going.

  3. 📜 Write your own smart contract or take one from the examples. A comprehensive amount of smart contract examples are available for your convenience and faster onboarding.

  4. 💻 Download and run your Gear node locally or create your own multi-node local testnet.

  5. 🐬 Deep dive to the Smart Contracts section of the Gear Wiki for more details about how to implement and run your dApp in Gear.

Run Gear Node

For Linux/MacOS users install script is available:

curl --proto '=https' --tlsv1.2 -sSf https://get.gear.rs/install.sh | sh 

Gear node can run in a single Dev Net mode or you can create a Multi-Node local testnet or make your own build of Gear node.

  1. Compile and launch node as described in Gear Node README. Alternatively, download nightly build of Gear node:

  2. Run Gear node without special arguments to get a node connected to the testnet:

    gear
  3. One may run a local node in development mode for testing purposes. This node will not be connected to any external network. Use --dev argument for running the node locally and --tmp for storing the state in temporary storage:

    gear --dev --tmp
  4. Get more info about usage details, flags, available options and subcommands:

    gear --help

Implement and run your own blockchain application

  1. Gear provides dApp application templates that cover various use cases - DeFi, DAO, NFT and more. Write your own smart contract or take one from the available templates. Adapt a template in accordance to your business needs.

  2. Test your smart contract off-chain, test it on-chain using a local node, then upload to Gear network.

  3. Implement an interface for your dApp for interaction Gear network using JS API or use provided by Gear on https://idea.gear-tech.io.

Gear components

  • core - Gear engine for distributed computing core components.

  • node - Gear substrate-based node, ready for hacking 🚀.

  • gstd - Standard library for Gear smart contracts.

  • gear-js - jsonrpc API of Gear backend.

  • examples - Gear smart contract examples.

Go to https://docs.gear.rs to dive into the documentation on Gear crates.

What does Gear do?


Gear provides the easiest and most cost-effective way
to run WebAssembly programs (smart-contracts) compiled from
many popular languages, such as Rust, C/C++ and more.


Gear ensures very minimal, intuitive, and sufficient API
for running both newly written and existing programs
on multiple networks without the need to rewrite them.


Smart Contracts are stored in the blockchain’s state
and are invoked preserving their state upon request.


Gear enables a seamless transition to Web3,
enabling the running of dApps, microservices, middleware and open APIs.

🔥 Key features

  • Programs run in WASM VM (near-native code execution speed)
  • Unique 👑 : Parallelizable architecture (even greater speed)
  • Unique 👑 : Actor model for message-passing communications - secure, effective, clear
  • dApp in minutes using Gear libraries
  • Based on Substrate

Main capabilities

Gear enables anyone to create and run any custom-logic dApp and is a go-to solution for the following types of applications:

  • Run dApps that support business logic of any project in the decentralized Gear network (very fast). Upload programs to the network and interact with them.
  • Being a Polkadot parachain, Gear establishes cross-chain communications between other blockchains, allowing anyone to run a dApp in the Polkadot network in a very cost-less manner.
  • Join Substrate-supported blockchains in any other platform outside Polkadot.
  • A standalone instance running microservices, middleware, open API and more

Why?

The blockchain technology launched a rapid transition from centralized, server-based internet (Web2) to decentralized, distributed one (Web3).

Web3 introduces a new type of decentralized applications (dApps) that enable the existence of DeFi, DEX, Decentralized marketplaces, NFTs, Creators and Social Tokens.

Smart Contract is an equivalent of a microservice which is stored on the blockchain network and is the essential building block of a decentralized application.

Modern blockchains solve many issues of the older blockchain networks, such as:

  • Lack of scalability, low transaction speed, high transaction costs
  • Domain-specific development language (high barrier to entry)
  • Complex and inefficient native consensus protocols
  • Absence of intercommunication tools

But still have room for improvements due to:

  • Fixated, rigid native consensus protocols
  • Lack of interoperability with other networks

To resolve the interoperability issue, Parity technologies focused on creating a technology that connects every other blockchain:

  • Polkadot - a blockchain of blockchains. Provides a “relay chain” (the primary blockchain) that enables “parachains” (functional blockchains) to be deployed on top of it. All parachains are interconnected, creating a massive network of multifunctional blockchain services.
  • Substrate - a modular framework that allows to create custom-built blockchains with consensus mechanism, core functionality and security out of the box.

Building a blockchain with Substrate allows it to be deployed on any compatible relay chain such as Polkadot and Kusama Substrate serves as a layer of communication between the relay chain and the parachain

How does it work?

The internal flow of Gear:

Snow

Refer to the technical paper for some insights about how Gear works internally.

Performance

Performance charts can be seen here: https://gear-tech.github.io/performance-charts.

Contribution

You can request a new feature by creating a new Issue or discuss it with us on Discord. Here are some features in-prog or planned: https://github.com/gear-tech/gear/issues

License

Gear is licensed under GPL v3.0 with a classpath linking exception.

gear's People

Contributors

ukint-vs avatar nikvolf avatar dependabot[bot] avatar breathx avatar shamilsan avatar gshep avatar clearloop avatar ark0f avatar grishasobol avatar techraed avatar sergeyfilyanin avatar ekovalev avatar stackoverflowexcept1on avatar dennisinsky avatar kvs96 avatar tltsutltsu avatar pikodd avatar peter-cmw avatar mertwole avatar mikitas avatar andrepanin avatar montaglue avatar anfid avatar github-actions[bot] avatar dimasikone avatar peter-amax avatar fluiderson avatar eugenway avatar dustyndumb avatar magorsky avatar

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.