This is a submission for the Build Better on Stellar: Smart Contract Challenge : Build a dApp
What I Built
Ok, I'm just using this hackathon as a way to promote an idea I have been nurturing for a while now.
It just sends a postcard π to your loved ones!
And all we need is just an address and a message. In this era of AI and Web3, we lose touch with our human selves. With this project, we are able to share our thoughts. I'm from a generation, where we have seen postcards, but never had the opportunity to use them. I mean everything is instant. And I want this application to be a platform where we communicate really thoughtfully.
My smart contract just does one thing: that is define a postcard.
My dApp currently let's you define the postcard, the receiver mentioned in address shall receive.
Demo
You can play with the deployed version on Stellar testnet at https://lekhanam.vercel.app/
My Code
You can follow the repo https://github.com/riojosdev/lekhanam4stella to stay updated on further developments happening.
riojosdev / lekhanam4stella
Lekhanam is from Malayalam language meaning Letter. And we try to send PostCards!
Lekhanam π
Lekhanam is from Malayalam language meaning letter.
Lekhanam lets you create a greeting card and publishes it to the Stellar blockchain. Which could be later used by 3rd party postal services to distribute the postcards.
Demo
Lekhanam demo is Deployed at Vercel. Where you are able to interact with the dApp on Stellar testnet.
Note: Currently the smart contract is only deployed to Stellar TestNet.
Setup
The application resides in the folder soroban-react-dapp.
The smart contract is the contracts folder. The NextJS application is in the src folder.
Once you clone the project, you would need to cd into the soroban-react-dapp folder. And run yarn
to install the packages.
Then cd into the contracts directory and run
cp .env.example .env
yarn
yarn build
yarn dev
This will start the soroban frontend application
You can then cd into the individual contracts, here it's greeting
cd greeting
cargo build
β¦Journey
Motivation
Ok, I once listened to a live talk show about career development in the MLH Career Hack Week, where they suggested that, to send a thank letter back to the HR or the person who gave you the opportunity to be interviewed for a job. Like, ask them for the address just to send a thank you letter back. It would make you, the applicant to stand out. It don't matter if you don't get the job. But the people won't forget about you. It would just make their day more pleasant. π
I want to send a postcard to my loved ones. This communication is not instant like all chat applications. It would take time to reach the other person. But that receiver would always have something in-hand to touch and feel, that would remind them of the thoughtful sender π. And it doesn't just reside only on the digital realm.
In a more serious motivation, is that human communication is being too much digitally and instantly. That we don't have time to appreciate the effort of communication. We get distracted easily. We are addicted to online content fed to us in an endless scroll. You know doom scrolling. So, let's just take a step back in communication. What would that be like? Well let's find that out together! π€β¨
DX - Developer Experience
Learned a lot about Stellar Smart Contract development and Web3. Also Rust, WASM, React.
What I'm proud of
I'm proud that my Single Page dApp is really minimalistic. And I'm currently letting users test the application without login. So, people would be able to learn about Web3. We don't need your personally identifiable information, yet! Once the public gets familiar and comfortable with our web3 dApp, and it's workflow. We shall make available the individual user accounts. But it needs to be stored outside the blockchain, due to privacy concerns, might need help from industry leaders here. We shall start a forum/discussion to iterate on various user feedback & preferences.
What's next? Hold your horses!
- User login
- Signed in Users gets an Address Book to store their loved ones addresses. So, they are able to easy send more postcards in the future.
- Ability to design the postcard and choose the material it is to be printed on. Upload images, select postcard size...
- Postcard will be available as NFT, which could be showcased on a public platform. And if anyone wants it they can bid on it, and use that template to distribute messages to their contacts.
- Ability to send to multiple addresses at once. Like an invitation card maybe.
- ActivityPub integration. I mean, we are focusing on socialization. So... Inbox, Outbox, Followers, Following, Likes, Comments, Sharing is actually part of socialization journey
- A Distributor Dashboard. I have previous built a notification system. The project is called ReadSync. I plan to use ReadSync to read when the contract is invoked & send notifications to the postcard distributor. Where the distribution service is done.
Top comments (0)