quietude0x / turbo-eth

⚡ Ethereum dApp Build System

Home Page:https://turbo-eth.github.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

banner

⚡ Turbo ETH (Beta)

TS GPLv3 license

Turbo ETH is an Ethereum dApp Build System; with a suite of tools to start building production ready dApps today.

Boilerplate:

The TurboETH build system uses Turborepo and pNPM; a high-performance build system and a fast, disk space efficient package manager.

  • Incremental builds
  • Content Aware Hashing
  • Remote Caching
  • Parallel execution
  • Task pipelines

Installation & Usage

git clone git@github.com:turbo-eth/turbo-eth.git

The pnpm package manager is required for node module management.

Please reference the pnpm documentation for installation instructions.

pnpm install

Packages use direnv to manage environment variables. You'll likely need to install it.

cp .envrc.example .envrc

Task Pipelines

Build flows are handled via tasks pipelines: schedule, execute, and cache.

Edit the turbo.json file in the root directory to define new pieplines

Start Building

pnpm lab

The fastest way to start hacking is to run the lab task pipeline: starts local blockchain, creates frontend development server and watches for packages files for changes.

Example:

{
  "$schema": "https://turborepo.org/schema.json",
  "baseBranch": "origin/main",
  "pipeline": {
    "chain": {
      "dependsOn": ["^chain"],
      "outputs": [""],
      "inputs": ["contracts/**/*.sol"]
    },
    "compile": {
      "dependsOn": ["^compile"],
      "outputs": [""],
      "inputs": ["contracts/**/*.sol"]
    },
    "lab": {
      "dependsOn": ["^watch", "^chain", "@turbo-eth/demo-app#dev"],
      "outputs": [""]
    }
  }
}

Modules

The monorepo includes 3 primary folders

Developer Experience


Copyright 2022 [Kames Geraghty](https://kames.me)

About

⚡ Ethereum dApp Build System

https://turbo-eth.github.io


Languages

Language:TypeScript 76.1%Language:JavaScript 12.3%Language:CSS 6.0%Language:Handlebars 3.0%Language:HTML 1.4%Language:Solidity 0.9%Language:Shell 0.3%