Create embeddable form widgets for decentralized Internet

Fyodor - Aug 19 - - Dev Community

This is a submission for the Build Better on Stellar: Smart Contract Challenge : Build a dApp

What I Built

I had built a dApp for creating embeddable form widgets for web. It's called 4m00se and it allows to:

  1. Create a form in WYSIWYG editor
  2. Get a code snippet for inserting into HTML pages
  3. Gather and analyze form responses
  4. Get full mutual accountability and traceability using blockchain technologies

Demo

https://4m.lol

My Code

https://github.com/stellar-dapps/4m00se-dapp

Journey

I wanted to build something on blockchain for quite a long time. The "Build better on Stellar" challenge had become a good buttkick for me.

Web3 always gots me interested, not because of the decentralized finance aspect of it. As an engineer, I see the great potential for software creativity using blockchain, and as the platforms for that become more approachable, it becomes easier to experiment with different technologies and tools in the ecosystem.

In terms of the challenge, the goal for me was to build something very practical, engaging different parts of the Stellar platform, but at the same time, something meaningful and solving at least a small but real problem. I had several ideas, but what incentivized me the most was this comment thread of the official Stellar challenge post. I had quickly realized that it will be really meta to solve the problem folks faced with the challenge itself. Moreover, I was really surprised after making some surface research that most web3 companies utilize web2 technologies for form solutions. All in all, it started to sound like a perfect Idea-Challenge fit to me. Not even mentioning that I love building developer tools and embeddable form widget is basically an SDK for website creators.

The initial idea was to quickly and easily assemble some proof of concept app which would, no more no less:

  • Use Stellar and Soroban
  • Not store data anywhere outside of blockchain
  • Craft a simple UI hiding all the possible web3 complexities

Needless to say, I was naive in my aspirations about quickly and easily 😅

But all in all, here I am with the working (well, in a limited way, but anywho) dApp and the demo page mirroring the official Stellar challenge submission page, but with web3 form widget allowing to submit your idea, and sign it with the Freighter wallet.

The journey is the best reward here, and if you're interested, you can find the details about the project philosophy, the list of cool invaluable resources I had found on my way, and... well, the heap of features I really want to implement further for this project, as it's huge, and I'd love to make it shine as I planned initially.

TL;DR of my experience with the challenge:

  • In these three weeks, I have learnt more than during the past three years
  • I had realized that Rust is not that scary, and actually, it is a very attractive programming language for curious engineers
  • I had recognized numerous efforts technical web3 community makes to engage developers in the ecosystem and make it more approachable
  • I found that SvelteKit, same way as other similar "full-stack" solutions for building web applications, can be both a source of great engineering satisfaction, and a PITA
  • I felt the pleasure of creative collaboration with the greatest UI/UX designer in the world (who also happens to be my wife), though I royally failed at meeting her Figma expectations with my poor implementation, and just used boring CSS.

Development of 4m00se has just started, so please let me know what do you think about the project and what problems/concerns do you foresee with the technologies used there, or the solution itself.

And if you fancy a quick tour, here we go 🎥

. . . . . . . . . . . . . . . .
Terabox Video Player