Updated 15 days ago

Scaffold Move

The ultimate template to quickly scaffold and test your dApp on Aptos

  • Crypto / Web3
  • Movement
  • Move
  • Scaffold
  • Developer tooling
  • Devtools

Aptos Grant Dao

2024/05/08 → 2024/09/08

Vote →

🏗 Scaffold-Move

🧪 An open-source, up-to-date toolkit for building decentralized applications (dapps) with Aptos Move. It's designed to make it easier for developers to create and deploy Move modules and build user interfaces that interact with those modules.

⚙️ Built using NextJS, Tailwind and Typescript.

  • Module Hot Reload: Your frontend auto-adapts to your Move modules as you edit it.
  • 🪝 Custom hooks: Collection of React hooks to simplify interactions with Move modules .
  • 🧱 Components: Collection of common web3 components to quickly build your frontend.
  • 🔐 Integration with Wallet Providers: Connect your Petra Wallet and interact with the Aptos.

Debug Modules tab

Requirements

Before you begin, you need to install the following tools:

Quickstart

To get started with Scaffold-Move, follow the steps below:

  1. Clone this repo & install dependencies
git clone https://github.com/arjanjohan/scaffold-move.git
cd scaffold-move
yarn install
  1. Run a local network in the first terminal:

If you use Aptos devnet or testnet, you can skip this step.

  1. On a second terminal, initialize a new account.
yarn account

This command overwrites packages/move/.aptos/config.yaml with a new Aptos account. The new address is copied over to the first address in the Move.toml file. If no address exists in this file, it is added on a new line.

  1. Deploy the test modules:
yarn deploy

This command deploys the move modules to the selected network. The modules are located in packages/move/sources and can be modified to suit your needs. The yarn deploy command uses movement aptos move publish to publish the modules to the network. After this is executes the script located in scripts/loadContracts.js to make the new modules available in the nextjs frontend.

  1. On a third terminal, start your NextJS app:
yarn start

Visit your app on: http://localhost:3000. You can interact with your Move modules using the Debug Modules page. You can tweak the app config in packages/nextjs/scaffold.config.ts.

Next steps

I have built the most essential and useful features, so that developers can start using Scaffold Move right away. However, there are more features that I want to add to this project after the hackathon. If you have any ideas or suggestions, please reach out to me.

To-do's:

  • Debug page
    • Styling Resources tab
    • Fix Vercel bug with Resources tab (Resources only showing on local for now)
    • Group modules under address
  • Fix colors for dark mode
  • Ensure export default deployedModules satisfies GenericContractsDeclaration
  • Add block explorer page

Links

Team