A premium social media post analysis and enhancement tool specifically designed for Threads posts. This tool analyzes your posts using multiple metrics and provides AI-powered enhancements based on your own viral posts and reference materials.
- Engagement Potential: Predicts likelihood of likes, comments, and shares
- Readability Score: Measures how easy your post is to read
- Sentiment Analysis: Evaluates positive sentiment
- Hook Strength: Analyzes the compelling power of your opening
- CTA Quality: Assesses call-to-action effectiveness
- Visual Appeal: Evaluates text structure and visual interest
- Authenticity: Measures how genuine your post sounds
- Viral Score: Overall composite score for viral potential
- AI-Powered Analysis: Advanced analysis using Gemini AI
- Smart Enhancement: AI-enhanced post versions based on your viral posts
- Reference Database: Build a knowledge base with your viral posts and PDFs
- Fine-Tuned Suggestions: AI uses your reference database to provide personalized enhancements
- Minimal, Threads-inspired UI
- Dark theme optimized for professional use
- Responsive design for all devices
- Frontend: React 18 + Vite
- Backend: Firebase (Firestore, Authentication, Storage)
- AI/LLM: Google Gemini API
- Styling: CSS3 with CSS Variables
- Icons: Lucide React
- Node.js 16+ and npm/yarn
- Firebase account (free tier works)
- Google Gemini API key
npm install- Go to Firebase Console
- Create a new project
- Enable Authentication (Email/Password)
- Create a Firestore database
- Enable Storage
- Copy your Firebase config values
Create a .env file in the root directory:
VITE_FIREBASE_API_KEY=your_firebase_api_key
VITE_FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_project_id.appspot.com
VITE_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
VITE_FIREBASE_APP_ID=your_app_id
VITE_GEMINI_API_KEY=your_gemini_api_keySet up your Firestore security rules:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
// Users collection
match /users/{userId} {
allow read, write: if request.auth != null && request.auth.uid == userId;
}
// Reference Database
match /referenceDatabase/{docId} {
allow read, write: if request.auth != null && request.auth.uid == resource.data.userId;
allow create: if request.auth != null && request.auth.uid == request.resource.data.userId;
}
// Analysis History
match /analysisHistory/{docId} {
allow read, write: if request.auth != null && request.auth.uid == resource.data.userId;
allow create: if request.auth != null && request.auth.uid == request.resource.data.userId;
}
}
}Set up your Storage security rules:
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /pdfs/{userId}/{allPaths=**} {
allow read, write: if request.auth != null && request.auth.uid == userId;
}
}
}To grant premium access to a user, add a document to the users collection in Firestore:
{
isPremium: true;
}Document ID should be the user's UID.
npm run devThe app will be available at http://localhost:3000
- Sign up or sign in
- Paste or type your Threads post
- Click "Analyze Post"
- Review your scores and insights
- Add Viral Posts: Go to Reference Database β Add Viral Post
- Upload PDFs: Upload reference PDFs to your database
- AI Enhancement: After analyzing, click "Enhance with AI" to get improved versions based on your references
src/
βββ components/ # React components
β βββ Login.jsx # Authentication
β βββ Dashboard.jsx # Main dashboard
β βββ PostAnalyzer.jsx # Post analysis interface
β βββ ScoreCard.jsx # Score display component
β βββ EnhancementPanel.jsx # AI enhancement display
β βββ ReferenceDatabase.jsx # Reference management
βββ services/ # Business logic
β βββ analysisEngine.js # Post scoring algorithms
β βββ geminiService.js # Gemini API integration
β βββ firebaseService.js # Firebase operations
βββ firebase/ # Firebase configuration
β βββ config.js
βββ App.jsx # Main app component
βββ main.jsx # Entry point
Edit src/services/analysisEngine.js to modify scoring algorithms.
Modify prompts in src/services/geminiService.js to change how the AI analyzes and enhances posts.
All styles use CSS variables defined in src/index.css. Modify these to change the theme.
- No Cloud Functions: This app uses client-side code only, compatible with Firebase free tier
- PDF Processing: PDF text extraction is a placeholder. For production, consider using a service or server-side processing
- Premium Access: Currently managed via Firestore
userscollection. Integrate with your payment system as needed
Private - Premium Tool
For issues or questions, contact your development team.