A decentralized Twitter clone built with Next.js and integrated with Bitcoin OS Bridge for enhanced Web3 functionality.
- Authentication: Secure user registration and login system
- Tweet Functionality: Post, like, retweet, and comment on tweets
- User Profiles: View and edit user profiles
- Follow System: Follow and unfollow other users
- Real-time Feed: View tweets from users you follow
- Bitcoin OS Integration: Includes taskbar, dev bar, dock, and PoC bar from @bitcoin-os/bridge
- Frontend: Next.js 14, React, TypeScript
- Styling: Tailwind CSS, Radix UI
- Authentication: NextAuth.js
- Database: SQLite with Prisma ORM
- Bitcoin OS: @bitcoin-os/bridge package
- Node.js 18+ installed
- npm or yarn package manager
- Clone the repository:
git clone https://github.com/yourusername/bitcoin-twitter.git
cd bitcoin-twitter- Install dependencies:
npm install- Set up the database:
npx prisma generate
npx prisma db push- Create a
.env.localfile:
DATABASE_URL="file:./prisma/dev.db"
NEXTAUTH_URL="http://localhost:3000"
NEXTAUTH_SECRET="your-secret-key-here"- Run the development server:
npm run devOpen http://localhost:3000 to view the application.
- Push your code to GitHub
- Import your repository to Vercel
- Set environment variables:
DATABASE_URL: Your production database URLNEXTAUTH_URL: Your production URLNEXTAUTH_SECRET: A secure random string
- Deploy
The app can be deployed to any platform that supports Next.js:
- Netlify
- AWS Amplify
- Railway
- Render
Build command: npm run build
Start command: npm run start
bitcoin-twitter/
├── src/
│ ├── app/ # Next.js app directory
│ ├── components/ # React components
│ ├── lib/ # Utility functions
│ └── types/ # TypeScript types
├── prisma/ # Database schema
├── public/ # Static assets
└── package.json # Dependencies
MIT