A modern, AI-powered Twitter thread management application built with Next.js, TypeScript, and Tailwind CSS.
- Thread Editor: Create and edit Twitter threads with real-time validation
- Character Counter: Track character count for each tweet with visual indicators
- Thread Preview: See how your thread will look before posting
- Draft Saving: Save your work locally and come back later
- AI Thread Generator: Generate engaging threads using AI based on your topic
- Multiple Templates: Educational, Story, Tips, News Analysis, and Personal Experience templates
- Custom Prompts: Customize AI generation with your own prompts
- Performance Dashboard: Track impressions, engagement, likes, and retweets
- Thread Analytics: Analyze which threads perform best
- Key Insights: Get actionable recommendations for better engagement
- Thread Scheduling: Schedule threads for optimal posting times
- Progress Tracking: Real-time progress updates during posting
- Notification Center: Stay informed with toast notifications
- Responsive Design: Mobile-first design that works on all devices
- Dark Mode Support: Toggle between light and dark themes
- Modern Components: Built with shadcn/ui components
- Smooth Animations: Framer Motion animations for better UX
- Node.js 18+
- npm or yarn
- Twitter Developer Account
- OpenAI API Key (optional, for AI features)
-
Clone the repository
git clone <repository-url> cd threadpostingproject
-
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env.local
Edit
.env.localwith your API credentials:TWITTER_API_KEY=your_twitter_api_key_here TWITTER_API_SECRET=your_twitter_api_secret_here TWITTER_ACCESS_TOKEN=your_twitter_access_token_here TWITTER_ACCESS_TOKEN_SECRET=your_twitter_access_token_secret_here OPENAI_API_KEY=your_openai_api_key_here
-
Run the development server
npm run dev
-
Open your browser Navigate to http://localhost:3000
- Next.js 14 - React framework with App Router
- TypeScript - Type-safe development
- Tailwind CSS - Utility-first CSS framework
- shadcn/ui - Modern UI components
- Framer Motion - Smooth animations
- React Hook Form - Form handling
- Zustand - State management
- React Hot Toast - Notifications
- Next.js API Routes - Serverless API endpoints
- Twitter API v2 - Tweet posting and analytics
- OpenAI API - AI-powered content generation
- ESLint - Code linting
- Prettier - Code formatting
- TypeScript - Static type checking
The application is fully responsive and optimized for mobile devices:
- Mobile-first design approach
- Touch-friendly interface
- Collapsible navigation for mobile
- Optimized layouts for different screen sizes
- Create a Twitter Developer Account
- Create a new app in the Twitter Developer Portal
- Generate API keys and access tokens
- Enable OAuth 1.0a User Context for posting capabilities
- Add your credentials to
.env.local
- Get an API key from OpenAI
- Add it to your
.env.localfile - AI features will be enabled automatically
The app supports both light and dark themes. Users can toggle between them using the theme switcher.
All components are built with shadcn/ui and can be easily customized by modifying the component files in components/ui/.
The app uses Tailwind CSS for styling. You can customize the design system by modifying tailwind.config.ts.
The analytics dashboard provides insights into:
- Total impressions across all threads
- Average engagement rates
- Best performing threads
- Optimal posting times
- Tweet count recommendations
- Environment variables for sensitive data
- Input validation and sanitization
- Rate limiting for API calls
- Secure token storage
- Push your code to GitHub
- Connect your repository to Vercel
- Add environment variables in Vercel dashboard
- Deploy automatically
The app can be deployed to any platform that supports Next.js:
- Netlify
- AWS Amplify
- Railway
- Heroku
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions:
- Check the Issues page
- Create a new issue with detailed information
- Join our community discussions
- Multi-account Twitter support
- Advanced scheduling with time zones
- Thread templates marketplace
- Team collaboration features
- Advanced analytics with charts
- Browser extension
- Mobile app (React Native)
Built with โค๏ธ by the ThreadPoster team