DEV Community

Cover image for Beauty on the Blockchain
Carron White
Carron White

Posted on • Edited on

4 3 4 3 3

Beauty on the Blockchain

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

What I Built

It's been almost ten years since some friends and I proposed a crazy idea about building "PrettyTendr", a beauty loyalty program on a blockchain. At the time we were intrigued by the possibility of rewarding tokens in exchange for knowledge sharing around products and community engagement. I was also a self-taught junior developer at the time and building an MVP for a concept so complex felt entirely out of reach. Imagine how thrilled I was to see this challenge and learn about the Soroban platform.

I set out to demonstrate the basic functionality of the dApp by implementing a smart contract that rewards users for completing a profile, one of the many engagement and personalization possibilities for the program. The dApp also sends the user a custom asset called PT in exchange for engagement. PT is intended to be eventually exchanged for product samples, access to exclusive events and more.

Demo

Live: https://bcrebel.github.io/prettytendr/

Engagement Options
Smart Contract Execution

My Code

Github: https://github.com/bcrebel/prettytendr

Journey

As a front-end dev that codes exclusively in JavaScript I was definitely intimidated by Rust. I decided to start with the Stellar Smart Contract Tutorial project, which was a great introduction to a complex topic. In addition to broadening by backend programming knowledge, I also learned about new front end tooling through their example project. I never worked with Astro before and it was a great opportunity to experiment with the partial application of React and to think critically about the specific interactivity and performance requirements on each app page. I was also impressed with the built in Accessibility audit. TailwindCSS compatibility was a plus because I can't do rapid prototyping without it. One thing to note though is that Astro is incompatible with React Context, and I found that out the hard way. I was so excited when I found the soroban-react package and then totally bummed when I realized that it relied on Context!

The Stellar Discord channel was my favorite resource for researching obscure contract and transaction related errors. I was also blown away by the visualizations in https://stellar.expert. I plan on iterating on my MVP dApp, continuing to learn Rust fundamentals, and practicing with Smart Contracts until they feel like second nature. I also plan to brainstorm ways to improve the user experience for those who are unfamiliar with dApps.

Heroku

Build apps, not infrastructure.

Dealing with servers, hardware, and infrastructure can take up your valuable time. Discover the benefits of Heroku, the PaaS of choice for developers since 2007.

Visit Site

Top comments (0)

Image of Timescale

Timescale – the developer's data platform for modern apps, built on PostgreSQL

Timescale Cloud is PostgreSQL optimized for speed, scale, and performance. Over 3 million IoT, AI, crypto, and dev tool apps are powered by Timescale. Try it free today! No credit card required.

Try free