dAppForge: AI-powered plugin for Polkadot developers that reduces development time

Hello everyone,

My name is Christian, I have been in the blockchain industry for several years, originally focusing on the SocialFi sector. Polkadot’s technology and very active developer community motivated me to join and build in the ecosystem. I completed the Polkadot Blockchain Academy Hong Kong cohort for the founders track. I was one of the 4 founders to graduate with distinction.

This discussion post aims to gauge the community’s thoughts/sentiments on the value our product can add to the Polkadot ecosystem.

Name:
dAppForge

Abstract:
An AI-powered plugin for Polkadot developers that reduces development time.

Blockchain development is complex and creates a high barrier to entry. We want to enable developers on Polkadot to build better dApps/appachains/parachains faster and lower the entry barriers for developers who want to enter the Polkadot ecosystem. The AI model will be trained explicitly on substrate and ink!.

Product Description:
AI-powered plugin for Polkadot developers to build better dApps, appchains, and parachains faster. The AI model will be trained explicitly in substrate and ink! This will enable the AI to make better code suggestions to developers. For example, better suggestions for fixing macro errors. It’s not enough to have a good AI model. The AI must be well integrated into the developer’s workflow to improve the developer experience. This means having a better UI and UX to improve the developer experience. Substrate and ink! developers are our core user base. Our approach profoundly involves listening to them and catering to their needs.

Polkadot has the second-largest developer ecosystem in the industry. And it has seen constant healthy growth in developer activity. Substrate is the best framework for building blockchains. ink! smart contracts can build more powerful dApps than solidity. If utilized to their full potential, substrate and ink! can be used to build great parachains, appchains, and dApps that can attract millions of users. That is something that is needed in the entire blockchain industry. This is why we want to focus on substrate and ink!.

Problem Statement:
Blockchain development is hard. While substrate and ink! are powerful frameworks, they are challenging to learn. This makes it difficult for current Polkadot developers to build good dApps/appchains/parachains. This also creates a barrier for new developers to enter the Polkadot ecosystem. There aren’t many great blockchain applications because there aren’t enough developers building them. We want to empower Polkadot developers to build better dApps/appchains/parachains faster and lower the entry barrier for non-blockchain developers who want to start building on Polkadot.

Ecosystem Fit:
There is a need to simplify the developer experience on Polkadot. Based on feedback from developers and startup teams, building with substrate is a steep learning curve. This causes a lot of friction with bringing new developers into the ecosystem. Our product can solve this pain point. Polkadot needs more consumer apps / appchains that can attract millions of users. Polkadot already has the second-largest developer ecosystem in the industry. What we need to do is empower all the great builders we already have.

Roadmap:
We have a lot of ideas for different features we want to have. But let’s focus on the short/medium-term goals for now ( next 8 months):

  • Build the plugin for VS code ( this will be done simultaneously with developing our AI mode).
  • Build the first version of our AI model specifically for ink! and substrate. The process involves using an open LM called WizardCoder as the base model. The base model will be customized to focus on substrate and ink! development to build the new model. This will enable us to have more custom features such as:
  1. Error handling: Understanding how macros and generic types work in substrate is a steep learning curve for most developers. When a user encounters errors with Macros, the AI will explain them and how to fix them. This way, developers can learn how to avoid these errors in the future. ChatGPT doesn’t do this well. Creating a substrate-specific GPT requires a lot of training. The GPT would still be based on the OpenAI model, which is not substrate-specific.

  2. Code auto-completion with various options: For example, when a user is writing their runtime logic, there will be a point where the developer needs to choose between different options. The AI can present different options; the developer chooses one, and the AI autocompletes it. This saves the developers a lot of time when customizing their runtimes. This is an improvement over what GitHub copilot offers. Often, the code produced by copilot needs to be optimized later. This slows down development time.

Advantages over Copilot and ChatGPT

  • Specialized Focus on Substrate and ink!
    Unlike Copilot and ChatGPT, dAppForge is tailored for Polkadot’s development frameworks - Substrate and ink!. Our AI model will not be a generalist coding assistant. It will be specialized, trained specifically in the intricacies of Polkadot’s ecosystem, ensuring more relevant and accurate suggestions for blockchain development.

  • Advanced Error Handling and Macro Support
    One significant hurdle in Substrate development is understanding and correcting macro errors. dAppForge will provide comprehensive error analysis and solutions. While ChatGPT provides generic programming advice, dAppForge’s AI is adept at interpreting and resolving complex macro issues unique to Substrate, a functionality absent in both Copilot and ChatGPT.

  • Better Code Auto-completion and Customization
    While GitHub Copilot suggests code snippets, dAppForge offers intelligent, context-aware code auto-completion with multiple options tailored for Polkadot’s frameworks. This feature accelerates development time and ensures that the generated code is optimized and customized for Substrate and ink!, something Copilot’s broader focus can’t match.

  • Continuous Learning and Community Feedback Integration
    dAppForge is not a static tool. It evolves by continuously learning from new developments in the Substrate and ink! ecosystem and integrating feedback directly from the Polkadot developer community. For example, when there’s a new release or update in the Substrate or ink! frameworks, the AI model will be updated to incorporate these changes. This ensures that the tool remains relevant and up-to-date. If developers encounter a recurring issue or identify a potential improvement, they can submit feedback. The AI model will be updated to reflect solutions and enhancements based on real-world user experiences. This ensures that dAppForge stays at the forefront of blockchain development innovations, surpassing the static knowledge base of ChatGPT and the general-purpose orientation of Copilot.

Go-to-market strategy:
Our target is developers using substrate and ink!! Our go-to-market strategy involves building partnerships with key players in the Polkadot ecosystem to target, reach, and onboard developers:

  • Polkadot Blockchain Academy.
  • Polkadot developer hero program.
  • Parachain teams.
  • Future developer programs ( Alpha).

We are also in talks with Easy A, where we plan to show our plug-in at their future Polkadot Hackathons. We also plan to work with different Polkadot Hackathons to showcase the plug-in to developers.

How is this product different from other Polkadot developer tools?
ink! Analyzer is a VS Code plug-in that focuses only on the ink!! smart contract language. It doesn’t help with runtime customization. It doesn’t have an AI component; therefore, it cannot generate code. The Subtrate plug-in is unmaintained and focuses only on Substrate. It doesn’t help with runtime customization. It doesn’t have an AI component and, therefore, cannot generate code.

Team information
Here is the link!

Future plans:
Improve the product and add more features that enhance the developer experience for substrate and ink! developers. For example, prompts that generate smart contracts for ink! and Frame pallets. Another feature can be where the developer writes a specific use. and asks which pallet is appropriate for that exact situation, and the AI comes with pallet options, trade-offs etc.We also plan to have the plug-in available for other IDEs like RustRover.

Down the line, we will integrate solidity into our AI model to support cross-chain developers who work on EVM-compatible chains like Moonbeam and Astar. This could bring solidity developers into the ecosystem.

Conclusion:
We have two goals:

  1. Help current Polkadot blockchain developers build better dApps, appchains, and parachains faster.
  2. Lower the entry barrier for new developers who want to build on Polkadot.

We look forward to the feedback from the community!

Here is my contact info:
Discord handle: chris.casini
Telegram: @christiannifty

46 Likes

Hello! Having been with Christian at PBA4, I’ve seen this idea evolve during the program as well as afterwards and have seen it really take shape as something that is built for Polkadot, and that can bring development in Polkadot to another level. Developer experience is one of the main priorities right now for the ecosystem, and I believe this contributes in a complementary way that is not covered by other initiatives, as well as may surpass what is available in other ecosystems.

  • William
6 Likes

I was in Hong Kong with Chris, and I can say that I witnessed this idea blossom during the PBA. Fantastic concept - and the developers I spoke with are wildly enthusiastic about it!

7 Likes

I was also with Chris in Honk Kong and I think this a terrific idea
with the potential to greatly reduce barrier of entry for developers to contribute to the ecosystem

3 Likes

As a new developer in the ecosystem I think that this if done right can help on board and learn substrate and make it reach wider audience. :ok_hand::ok_hand:

2 Likes

Met Chris at the PBA in Hong Kong. Definently one of the best pitches in the group. Loved his willingness to always help others! The project is not trivial to execute, but if done right can be really beneficial to the ecosystem and wider web3 industry as a whole. Would love to see this get funded!

3 Likes

One of the biggest problems I faced when I was learning FRAME and substrate was the lack of tools that could help me along the development flow. VSCode existing Rust plugin does not help with Substrate stuff. This project can be game changer to onboard new developers to substrate and I fully support it.

3 Likes

This has the potential to be a game changer for new developers trying to get into Substrate. Definitely worth it.

3 Likes

Simple and powerful project. Has the potential to significantly boost developer productivity. I’m a frequent user of GPT and Copilot, and the prospect of a tool that outperforms these with substrate/ink compatibility is truly exciting. Automating away more boilerplate code not only speeds up development but also allows us to focus on creative and complex problem-solving. If dAppForge can also enhance code quality and fix security issues, it would be incredible.

3 Likes

Chris is bullish on Polkadot. I met him virtually for the first time at the Angelhack incubator and later in person at PBA Hong Kong. I believe that he will put in a lot of effort to bring more developers on board with DappForge. In my opinion, this project is essential to the ecosystem.

Mario.

3 Likes

Great initiative @Chris_Nifty !

We talked many times during the PBA and he convinced me this would be a useful project for our developers. Let me know when the first version goes out and we will test it with our G6 Chains dev team!

4 Likes

As a developer deeply involved in the ecosystem, I’ve noticed a gap in existing AI tools when it comes to substrate runtime or ink smart contract development. Having been part of the PBH HK cohort alongside Chris, I witnessed his dedication to addressing this challenge by creating a specialized tool tailored specifically for substrate and ink. His efforts are commendable and I believe that this tool has the potential to significantly enhance developer efficiency and bolster the entire ecosystem :zap: :zap:

3 Likes

Christian is a dedicated person. We joined PBA hongkong Together and witness his passion. His idea evolve in the program and its getting better. I think dAPPForge will help our ecosystem grow, and its great to have other platform that help we build our ecosystem faster.

3 Likes

Looking forward to working together!

2 Likes

This is a great idea! really looking forward to using this product.

I also know Chris via the moonbeam developer community, he’s honest, respectable and smart guy.

I support this fully, good luck to all. Can’t wait to use it!

3 Likes

I’ve had several discussions with Chris before and after his pitch in Hong Kong, and one thing stands out about him—he’s incredibly open to feedback and uses it to refine his ideas. As others mentioned, his idea evolved remarkably, and I’m excited to see his concept here.

Let me share my vision of how this plugin fits the developer community.
Rust is complex, and substrate adds another layer of difficulty, making it challenging for new developers. We’ve all been there, struggling with syntax and puzzling over error messages. In my case, I often tried to use Copilot’s new /fix chat command to fix many errors I got while (wrongly) using a macro or even on the traits provided by substrate out of the box, and the suggestions Copilot provided to fix them were rubbish. So here is where this custom plugin becomes a game-changer: deciphering the error and giving clear explanations and actionable solutions tailored to the context in which it is being used and what the dev is trying to code.
Also, beyond the error guidance/resolution, the plugin aims to provide accurate suggestions and auto-completions that align with the coding patterns written in the docs and base code. This could also be a time-saver for the other spectrum of developers with plenty of background and knowledge to ask for suggestions and quickly validate if what they have gotten from the plugin fits their needs, reducing coding time on straightforward tasks.

I would love to see this in production and plan to contribute to the tool’s development. I think it is a great idea, but it is not a one-person job; I think we need to work closely with the devs community and foment collaboration within the Polkadot ecosystem, improving the corpus with insight on error fixing and code suggestions, evolving the AI model in each iteration, and also the plugin itself.

2 Likes

Than you @mberguer for the great technical explanation!
I am very glad that you see the potential of the product.

Absolutely!

1 Like

I met Christian during the PBA event in Hong Kong as both of us were in the Founders Track. I was very impressed by his passion, his contributions and dedication to the event, as well as his openness and willingness to help all members of the PBA. He also attained the highest score in the Founders Track. While I started as a software developer in the Web2 world a while back, I have tried to also learn Rust but I admit that it is very tough so if there is an AI tool that can help to alleviate the steep learning curve, I will jump on it so I support this initiative!

1 Like

Thank you!

1 Like

This could definitely be a big productivity booster for existing Substrate and FRAME devs, and also a great tool to boostrap developer adoption by helping onboard new devs to the ecosystem (if done carefully enough to not make developers fully dependent on it). I’m looking forward to see this one in action!

3 Likes