Website | Webapp | Telegram | Discord | Twitter
Decentralized social built with Nostr and powered by Starknet account abstraction.
The name "Joyboy" is inspired by the character from the manga series "One Piece". Joyboy is a mysterious figure from the Void Century who left behind a treasure called the "One Piece". What if the treasure are the friends we made along the way? A decentralized social network should be a treasure trove of memories and connections.
Also Joyboy refers to a figure in the Caribbean mythology, a dancing god with a constant smile.
Joyboy is considered as the personification of freedom and joy.
Yes! This is what social networks should be about. A place where you can be yourself, express your thoughts and feelings, and connect with others.
Freedom requires censorship resistance, and Nostr provides exactly that.
- Cairo implementation of Nostr signature verification
- Starknet account contract implementation, controlled by Nostr keypair
- Joyboy landing page
- SocialPay feature to send and receive tips through Nostr signed messages
- Implement a full Nostr client application with Starknet integration
- Run Nostr relay server
- Crossover with Vault to bring Social features to the Vault application
sequenceDiagram
actor Alice
actor Bob
participant SocialPay relay
participant Starknet Node
participant Alice Account
participant STRK Token
Alice->>SocialPay relay: @joyboy send 10 STRK to @bob
activate SocialPay relay
SocialPay relay->>Starknet Node: SocialPay transaction
Starknet Node->>Alice Account: SocialPay handler
Alice Account->>STRK Token: transfer
Starknet Node->>SocialPay relay: SocialPay transaction complete
SocialPay relay->>Bob: @bob you just recived 10 STRK from @alice
SocialPay relay->>Alice: @alice transfer of 10 STRK to @bob is complete
deactivate SocialPay relay
Webapp
The webapp is a simple frontend to sign and verify messages using a browser extension like Flamingo or nos2x. It is built using React and Tailwind CSS.
To start the development server, run:
npm start
To build the project, run:
npm run build
Onchain
The onchain components of the project are implemented as a suite of Starknet smart contracts.
To build the project, run:
scarb build
To test the project, run:
snforge test
- Starknet
- Nostr
- Nostr Implementation Possibilities
- JoinStr: Decentralized CoinJoin Implementation Using Nostr
- Smart Vaults - Bitcoin multi-custody signature orchestration - website
- Smart Vaults - Bitcoin multi-custody signature orchestration - repo
Thanks goes to these wonderful people (emoji key):
Abdel @ StarkWare 💻 |
Maciej Kamiński @ StarkWare 💻 |
MSG 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!