Published on

Create Substrate App - CLI Tool

  • avatar
    Philomath Ingeniare

Building intuitive user interfaces (UIs) for blockchain applications can often add significant complexity, especially when considering the specific requirements for interacting with Substrate-based networks. To address this, we're excited to introduce a new CLI tool: create-substrate-app. The process can be especially difficult for beginner DApp developers who are not familiar with the process yet.

Bridging the Gap Between Blockchain and Front-end

create-substrate-app aims to dramatically streamline front-end development for Substrate blockchains. This tool empowers you to rapidly create fully configured starter projects using popular front-end frameworks:

  • Angular: Structure and scalability for complex enterprise-grade applications.
  • React: Fast, component-driven UI development and a rich ecosystem.
  • Vue: A balance of approachability and flexibility for projects of varying sizes.

Key Features

  1. Effortless Project Setup: Say goodbye to manual boilerplate. With just a few commands, you'll have a production-ready project structure, pre-wired to your desired Substrate chain.

  2. Chain Configuration: Easily tailor your application to your specific Substrate network using simple configuration options.

  3. Integrated Libraries: The tool seamlessly includes crucial libraries, such as Polkadot.js for interacting with Substrate-based chains, saving you valuable development time.

  4. Framework Flexibility: Choose the front-end framework that best aligns with your team's preferences and project requirements.

Getting started

Let's illustrate how simple create-substrate-app makes the process:

npx create-substrate-app my-app

The Result:

You now have a project perfectly structured for your Substrate interactions, complete with:

  • Chain interaction logic
  • Type definitions for your chain's metadata
  • UI component examples demonstrating common Substrate interactions.

Future Directions

We envision create-substrate-app as an actively maintained community project. Contributions are encouraged for features such as:

  • Advanced component libraries
  • Pre-built templates for common functionalities (wallets, staking UIs, etc.)
  • Support for additional front-end frameworks
  • Deployment guides for IPFS and integration with blockchain domains