Create-dot-app - The Scaffolding Tool for All Your Polkadot dApp Ideas!

Hey everyone,

Ever get a great idea for a Polkadot dApp but then get slowed down by the setup and configuration before you can even write a single line of code? We’ve all been there. The complex setup, hunting for the right libraries, and making sure your project structure is solid can be a real drag.

That’s why I’m excited to introduce Create Dot App!

Think of it as a create-react-app or create-next-app, but specifically for the Polkadot ecosystem. It’s a simple command-line tool that helps you bootstrap your Polkadot projects in seconds, with pre-configured templates and best practices baked in.

Key Features

Based on the templates, here are some of the features you can expect out-of-the-box:

  • Choice of SDK: You can choose between templates using dedot or papi.
  • Wallet Connection and Management: Comes with pre-built UI components for connecting to wallets and managing accounts, making it easy for users to interact with your dApp.
  • Pre-configured Multi-chain Connectivity: The templates are already connected to multiple chains. For mainnet, it’s configured for Polkadot and Polkadot Asset Hub. For testnet, it connects to Paseo and Paseo Asset Hub.
  • On-chain Transactions: Includes integrated examples for signing and submitting transactions through the connected wallet, providing a solid foundation for building interactive features.
  • End-to-end Type Safety: Leverages TypeScript to provide strong type safety for all on-chain interactions, fully configured and ready to use.

What’s the problem we’re solving?

Starting a new Polkadot dApp can be a pain. You have to deal with:

  • A complex setup process.
  • A steep learning curve that takes time away from your main idea.
  • Limited options if you’re not a React developer.

How does Create Dot App help?

create-dot-app is designed to get you up and running fast. It’s a framework-agnostic tool, which means you can finally build with the frontend frameworks you love.

Currently Available:

Right now, we have production-ready templates for:

  • React (with a choice of dedot or papi SDK)

  • Vue.js (with a choice of dedot or papi SDK)

On our Roadmap:

  • Frontend Frameworks: We’ll be adding support for meta-frameworks like Next.js and Nuxt.js soon, followed by other popular frameworks like Svelte, Solid, and Remix.
  • Backend Frameworks: Looking further ahead, we plan to support modern, platform-agnostic backend frameworks like Hono, Elysia, and H3 to provide a truly full-stack scaffolding experience.

For now, the templates are quite similar in structure. We welcome community feedback and requests for more opinionated templates! For example, if you’d like to see a template with a specific UI framework like shadcn integrated, please let us know by opening an issue on our GitHub.

Our goal is to support the tools you already use and love.

Now, you can spend less time on boilerplate and more time building amazing things on Polkadot!

Get Started!

It’s super easy to get started. Just run the following command in your terminal:

npx create-dot-app

We’d love for you to try it out and let us know what you think. All feedback is welcome! We’re just getting started and want to build this with the community in mind.

You can check out our project and contribute on GitHub: https://github.com/preschian/create-dot-app.

For any feedback, suggestions, or questions, feel free to reach out to me on Telegram at Telegram: Contact @preschian .

Let’s make building on Polkadot easier for everyone!

Cheers!

14 Likes

Thank you very much niklasp for the review.

Thanks also to @sinzii and @voliva for your help at that time. Actually, I was testing this project and found 1 bug in dedot and papi:

Maybe if you have time, you could help review the templates I made again to see if they’re good enough or if there’s anything that needs improvement from the SDK usage perspective :folded_hands:t2:


For future updates, I will post them in this thread.

2 Likes

Fantastic work, thank you very much for working on this and creating a valuable resource for the community! I’ll give it a try tonight :star_struck:

Our team has worked on a similar thing here: Create-polkadot-dapp: spin up your dapp in seconds!

How can we support you and help converge the two efforts?

FYI @mcornholio

1 Like

The solution that I’m leaning towards is “external templates” (or “community templates”), as another section in this menu:

It would spawn templates that live in external repositories, mentioning the authors, reasoning and so on.
Basically, just have some metadata in place, together with the command that needs to be called. Ideally, with some tests too.

We have some candidates for it already, plus there are also other scaffolding tools like GitHub - camdengrieh/scaffold-dot: Open source forkable Ethereum dev stack with support for Polkadot.

I haven’t planned any of that work for Q3, however, together with some new feedback from W3S hackathon, sounds like something that we’ll do in Q4.

1 Like

Thank you! Please let me know if you encounter any issues or have suggestions.


Wow, this looks great. I’m open to any collaboration :rocket:

In the middle of building this tool, I changed from copy-paste templates to downloading templates using https://www.npmjs.com/package/@begit/core. Maybe for the “external templates” section, tools like this would be a good fit

await downloadRepo({
    repo: {
        owner: 'preschian',
        name: 'create-dot-app',
        branch: 'main',
        subdir: `templates/${template}`,
    },
    dest: name,
})

Maybe for the “external templates” section, tools like this would be a good fit

I’m thinking simply to specify a shell script per template, as some of them will start with git clone ..., some would be npx ..., and also each template would have it’s own commands / flags / etc.

1 Like

Thanks for this. I will try to play with it as well. Do you know if it is compatible with this component library [Dot-UI](https://dot-ui.com/)? I tried that one out a few days ago and its was difficult to get it to work with a small create-react-app I was playing with. Then I realized that CRA was deprecated. So Now I am working on a Nextjs project, but I was having trouble getting Turbopack to work with the latest version as some of my modules were not available in Turbopack. When this stuff is developing so rapidly its hard for those learning to figure out which options to choose.

2 Likes

It should be able to use dot-ui as well. Because one of my goals in creating create-dot-app is to make templates as minimal as possible for the initial stage. So developers can add any UI framework or library on top of it.

For the steps, it could be like this: create-dot-app-playground/cda-dot-ui/GUIDES.md at 187603d715101ccee0f7075277aa483e50e4d9a5 · preschian/create-dot-app-playground · GitHub

You can also see my commit history for each step here: create-dot-app with dot-ui by preschian · Pull Request #1 · preschian/create-dot-app-playground · GitHub

Just pushed an update to Create Dot App! :rocket:

:sparkles: Next.js and Nuxt.js templates are finally here
:package: Added Deno support for non-meta frameworks (React/Vue) - now truly package manager agnostic (npm, yarn, pnpm, bun, deno)

From React/Vue to Next/Nuxt, pick whatever you like and start building on Polkadot in seconds.

npx create-dot-app@latest

Full changelog: Releases · preschian/create-dot-app · GitHub

4 Likes

Hey I was looking for Next.js support.
Would love to see support for shadcn/tailwind which is very commonly used for Nextjs stack :slight_smile:

1 Like

This is a very nice project! Well done @0xPresc

I would love to contribute and see as you add the other frameworks

1 Like

Hi, thank you for the suggestion! Currently, all templates already come with TailwindCSS by default. In the meantime, developers are free to integrate any UI framework they prefer, including shadcn, on top of it. I’ll keep your request in mind for future improvements

1 Like

This is awesome. I am building a dApp on Polkadot. Will definitely try it👍

1 Like

:rocket: Major Update: create-dot-app Now Supports Solidity Templates

Hello Polkadot community!

I’m excited to announce a major update to create-dot-app! We’ve just added Solidity template support, making it even easier to build dApps on Polkadot.

Quick Start

Get started immediately with:

npx create-dot-app@latest

What You Get

The template provides a complete development environment with:

├── dapp     → Frontend (React/Vue + Wagmi)
└── hardhat  → Smart contracts

Features Included:

:white_check_mark: Base dApp UI - Choose between React or Vue with Wagmi integration
:white_check_mark: Smart Contract Development - Full Hardhat environment configured
:white_check_mark: Ready for Development - Everything set up and ready to go
:white_check_mark: Polkadot Ecosystem - Optimized for building on Polkadot

What’s New

This latest update adds comprehensive Solidity support to create-dot-app. Now when you scaffold a new project, you can build dApps using Solidity smart contracts while still getting the same streamlined development experience.

Why This Update Matters

With Solidity template support, we’re expanding accessibility for developers already familiar with Ethereum development. This significantly reduces the setup time and learning curve for developers wanting to build dApps in the Polkadot ecosystem.

Perfect For:

  • Ethereum developers transitioning to Polkadot
  • Teams wanting to quickly prototype dApp ideas
  • Projects requiring both frontend and smart contract development
  • Developers familiar with Hardhat and Wagmi ecosystem

Get Started Today

Try it out and let me know your feedback! The template is designed to get you from zero to a working dApp as quickly as possible.


Originally shared on Twitter

Happy building! :hammer_and_wrench:

3 Likes