A comprehensive web application to analyze your Instagram messaging patterns, social network, and communication habits.
- Total messages, % sent/received
- First/Last message date
- Average message length
- Top 10 words used (excluding stopwords)
- Message timing breakdown (hourly, weekly, by day part)
- Average/median response time
- Fastest/slowest replies
- Response categorization (instant, quick, slow, etc.)
- Conversation gaps with dates
- Top 10 most common emojis
- Emoji usage patterns
- Emoji comparison between friends
- Instagram post/reel sharing detection
- Post sharing count and patterns
- Friendship rankings by activity
- Most balanced vs. one-sided friendships
- Longest friendships
- Fastest response friends
- Friendship categories (Best Friends, Close Friends, Regular, Distant)
-
Install dependencies:
npm install
-
Start development server:
npm run dev
-
Build for production:
npm run build
-
Navigate to backend directory:
cd backend -
Install Python dependencies:
pip install -r requirements.txt
-
Start Flask server:
python app.py
- React 18 with Vite
- TailwindCSS for styling
- Framer Motion for animations
- Recharts for data visualization
- React Router for navigation
- Axios for API calls
- React Dropzone for file uploads
- Flask with CORS support
- Python for data processing
- Emoji library for emoji detection
- JSON processing for Instagram data
instagram-analyzer/
βββ src/
β βββ components/ # Reusable components
β βββ contexts/ # React contexts
β βββ pages/ # Page components
β βββ App.jsx # Main app component
β βββ main.jsx # Entry point
βββ backend/
β βββ app.py # Flask API
β βββ requirements.txt # Python dependencies
βββ package.json # Frontend dependencies
βββ vite.config.js # Vite configuration
βββ tailwind.config.js # Tailwind configuration
βββ vercel.json # Deployment config
POST /api/upload- Upload Instagram data ZIPGET /api/friends- Get list of friendsGET /api/analysis/<friend_id>- Get detailed friend analysisGET /api/network- Get social network insightsGET /api/health- Health check
- Mobile-first approach
- Tablet and desktop optimized
- Dark mode support
- Interactive charts and graphs
- Real-time data updates
- Animated transitions
- Drag & drop file upload
- Loading states and progress indicators
- Error handling and validation
- Toast notifications
- Local data processing
- No permanent data storage
- Session-based analysis
- Secure file handling
- Connect your GitHub repository to Vercel
- Configure build settings
- Deploy automatically on push
- Create a new Web Service on Render
- Connect your GitHub repository
- Set build command:
pip install -r requirements.txt - Set start command:
python app.py
-
Get your Instagram data:
- Go to Instagram Settings β Privacy and Security β Data Download
- Request your data and wait for the email
- Download the ZIP file and extract it
-
Choose your upload method:
Option 1: Messages Folder (Recommended)
- Navigate to:
your_instagram_activity/messages/ - Zip the entire
messagesfolder - Upload the ZIP file
Option 2: Individual Files
- Navigate to:
your_instagram_activity/messages/inbox/[friend_name]/ - Select multiple
message_*.jsonfiles - Upload them directly
- Navigate to:
-
Upload and analyze:
- Open the web application
- Enter your name as it appears in Instagram
- Upload your files using either method
- Wait for analysis to complete (much faster now!)
-
Explore insights:
- View dashboard overview
- Analyze individual friendships
- Explore social network patterns
- Compare messaging habits
VITE_API_URL- Backend API URL (default: http://localhost:5000)
- Modify
tailwind.config.jsfor custom styling - Update
src/contexts/DataContext.jsxfor API endpoints - Customize analysis logic in
backend/app.py
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the MIT License.
- Your data is processed locally on the server
- No data is permanently stored
- All analysis is done in memory
- Files are cleaned up after processing
If you encounter any issues:
- Check the browser console for errors
- Verify your Instagram data format
- Ensure all dependencies are installed
- Check the API endpoints are accessible
Note: This application requires Instagram data export in ZIP format. Make sure to follow Instagram's data download process to get the correct file format.