Back to Blog
Building InstaUnfollowers for relationship analysis on Instagram
•Emmanouil Athanasopoulos•2 min read•251 words
React NativeWebViewOAuthSocial Media
The Motivation Behind the Project
InstaUnfollowers was built around a simple question: who follows back, and who does not? The app turns that into a more structured workflow so users can review account relationships without doing the comparison manually.
Core Features and Design Goals
- Non-follower detection: a direct way to identify one-sided follows.
- Mass unfollow: a convenience feature for users cleaning up their account.
- Smart login: an effort to make the sign-in flow easier to use repeatedly.
- Relationship analysis: a more complete view of how the account network changes over time.
Technical Implementation
- Implemented secure Instagram authentication via WebView that intercepts the OAuth redirect, extracts session cookies, and uses them to make authenticated API calls for follower/following list retrieval without storing raw credentials.
- Built a set-difference algorithm that compares follower and following lists to identify non-followers, mutual follows, and fans — then presents results as categorized, scrollable lists with profile images and direct action buttons.
- Designed a rate-limited mass unfollow system with configurable delays between requests to avoid triggering Instagram's abuse detection, using expo-keep-awake to prevent the screen from sleeping during long batch operations.
The Technology Stack
Built with Expo Router, React Native, and TypeScript. Authentication flows through a controlled WebView with cookie extraction, and the follower analysis engine runs client-side set operations on the fetched data. The app uses expo-keep-awake during batch operations and Expo Image for optimized profile picture rendering.
Final Reflections
The project is a good example of turning an awkward manual task into a much quicker workflow.