Skip to content
 
 

Repository files navigation

📚 StoryDAO – Decentralized Storytelling Platform

StoryDAO is a community-powered decentralized application (dApp) built to revolutionize storytelling. Writers can mint original stories as NFTs, and the community collaborates by submitting and voting on sequels. The winning narratives form an evolving chain of story arcs — all governed by smart contracts and powered by the Story Protocol.


🚀 Features

  • ✍️ Story Minting: Writers mint original stories as NFTs with metadata (title, genre, IPFS hash).
  • 🔗 Sequel Submission: Community members submit sequels linked to the original story ID.
  • 🗳️ Voting System: One-user-one-vote for each story branch (no downvotes).
  • 🎁 Reward Distribution: Tokens/NFTs are rewarded to authors of selected continuations.
  • 🧬 Story Lineage Tracking: Trace the full story arc via parent-child smart contract relationships.
  • 🧑‍💻 Author Profiles: Writers can upload avatars, story cover images, and link social accounts.
  • 📊 Trending Dashboard: Discover top-rated stories and sequels.

🛠️ Tech Stack

Frontend:

  • React (v18.3.1) + TypeScript + Vite
  • TailwindCSS for styling
  • react-router-dom for routing
  • framer-motion for animations
  • @react-three/fiber for 3D effects
  • ethers.js for Web3 integration

Backend:

  • Node.js + Express
  • MongoDB with Mongoose
  • JWT for authentication
  • Pinata SDK for IPFS file storage
  • CORS + dotenv for environment and security

Blockchain & Protocol:

  • Ethereum / Polygon for contract deployment
  • Story Protocol for IP licensing, tracking, and registration
  • IPFS via Pinata for decentralized storage

⚙️ Setup Instructions

Clone the Repository

git clone https://github.com/YourUsername/StoryDAO.git
cd StoryDAO

Install Dependencies

Frontend:

cd client
npm install

Backend:

cd ../server
npm install

Environment Variables

Create .env files in both client/ and server/ directories and add:

# For Backend
PORT=5000
MONGO_URI=your_mongodb_url
JWT_SECRET=your_jwt_secret
PINATA_API_KEY=your_key
PINATA_SECRET_API_KEY=your_secret

🧪 Run the App

Start Backend:

cd server
npm run dev

Start Frontend:

cd client
npm run dev

🔗 Integrations

  • 🧠 Story Protocol: Used for IP registration, tracking, and licensing of original and derivative works.
  • ⛓️ Smart Contracts: Used for NFT minting, story registration, sequel linking, voting, and reward distribution.

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.


🤝 Contributing

PRs are welcome! If you'd like to improve StoryDAO, submit a pull request or open an issue.


✨ Authors


About

StoryDAO is a decentralized storytelling platform where original stories are minted as NFTs using Story Protocol. The community submits sequels to these stories, and users vote on the best ones. Winning sequels continue the story, and both the original and sequel authors are rewarded with tokens or NFTs

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages