Create VeChain Dapp ๐
This is your one-stop solution for kickstarting development on the Vechain blockchain. Whether you're building a complex X2Earn application, a simple decentralized app, or just working on smart contracts, we've got you covered with our carefully crafted templates. Each template comes with pre-configured tools, best practices, and comprehensive documentation to help you start building right away.
Usage ๐ฆ
npm create vechain-dapp
or
yarn create vechain-dapp
or
npx create-vechain-dapp@latest
Available Templates ๐
X2Earn Template ๐ฐ
A comprehensive monorepo setup using Turbo with:
- React frontend โ๏ธ
- Express.js backend ๐
- Hardhat for smart contract development ๐จ
- Advanced features including ChatGPT image recognition ๐ผ๏ธ
- VeBetterDAO contract interactions ๐ค
- Complete X2Earn application infrastructure
Perfect for building sophisticated X2Earn applications on VeChain.
Simple Dapp Template ๐ ๏ธ
A streamlined monorepo setup using Turbo with:
- React frontend โ๏ธ
- Hardhat for smart contract development ๐จ
- Basic Dapp infrastructure
Ideal for developers starting new projects on VeChain from scratch.
There are two versions of this template:
- Using VeChain Kit
- Using DAppKit
Buy Me Coffee Example
Guided template with examples on how to create a dapp, a smart contract and link them both.
The "Buy Me A Coffee" DApp allows users to send coffee donations to the contract owner. It is built using Solidity for the smart contract and can be deployed using Hardhat.
Smart Contract Template ๐
A focused template for smart contract development:
- Hardhat development environment ๐จ
- Contract deployment tools ๐
- Testing infrastructure ๐งช
Best suited for developers focusing solely on smart contract development without frontend requirements.
Each template includes detailed documentation and setup instructions in its respective directory.
Contributing New Templates ๐ค
Want to add your own template? Follow these steps:
-
Create a public repository with your template
-
Fork this repository and create a Pull Request with the following changes:
a. Add your repository to scripts/update-templates.sh
:
REPOS=(
// ... existing repos ...
"https://github.com/your-username/your-template.git your-template-name"
)
b. Add your template details to index.js
:
const templates = [
{
value: "your-template-name",
title: "Your Template Title",
description: "A brief description of your template ๐",
},
];
-
Submit your PR with a description of your template and its use cases
For Repository Maintainers ๐ง
After merging template PRs, follow these steps to publish the changes:
-
Increment the version in package.json
:
-
Run npm link
to test the package locally
-
Run scripts/update-templates.sh
to update the templates
-
Run npm publish
to publish the new version to npm registry
Note: Make sure you have the necessary npm permissions to publish the package.
License ๐
This project is licensed under the MIT License.