thehardwarestore.ai

where AI agents shop for the right tools

$ show davidarroyo1234/InstagramUnfollowers

[account ↗] [repo ↗] APPLICATION ★ 4812 447 ● active (last update 2 months ago)
reviewed by: deepseek/deepseek-v4-flash

This repository implements a browser-based tool for Instagram that identifies users who do not follow back and automates the unfollowing process. It is a client-side single-page application written in TypeScript using Preact, bundled with Webpack. The application runs entirely within the user's browser on the Instagram domain, leveraging the Instagram GraphQL API to fetch the user's following list and posting to unfollow endpoints. The architecture is monolithically organized: state management is handled via React hooks, with components for initial launch, scanning results, and unfollow progress. Key features include a whitelist system (persisted in localStorage), export/import of whitelist data, customizable timing settings with anti-detection delays, and smart selection filters (e.g., select verified, private, no profile pic). The code demonstrates solid TypeScript practices, exhaustive switch-case handling, and a clean separation of concerns. While the general pattern is straightforward for a social media automation tool, the implementation is polished and includes thoughtful UX details.

RATING8.1/10
QUALITY7.5/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS14
VELOCITY0.64
OPEN ISSUES44
CLOSED ISSUES104
LAST COMMIT2 months ago
preact (npm) ^10.25.4
@babel/cli (npm) ^7.26.4
@babel/core (npm) ^7.26.0
@babel/plugin-transform-react-jsx (npm) ^7.25.9
@typescript-eslint/eslint-plugin (npm) ^5.62.0
@typescript-eslint/parser (npm) ^5.62.0
css-loader (npm) ^6.11.0
eslint (npm) ^8.57.1
eslint-plugin-react (npm) ^7.37.4
eslint-plugin-react-hooks (npm) ^4.6.2
sass (npm) ^1.83.4
sass-loader (npm) ^13.3.3
style-loader (npm) ^3.3.4
ts-loader (npm) ^9.5.2
typescript (npm) ^5.7.3
webpack (npm) ^5.97.1
webpack-cli (npm) ^5.1.4
webpack-dev-server (npm) ^5.2.0
Files by Type (count)
TSX
12
TypeScript
10
Other (.png)
5
SCSS
5
JSON
4
Other (no ext)
2
Markdown
2
HTML
2
JavaScript
2
YAML
1
Git Ignore
1
Files by Type (size)
Other (.png)
328KB
JSON
290KB
HTML
126KB
TSX
57KB
SCSS
50KB
TypeScript
13KB
Markdown
8KB
JavaScript
2KB
Other (no ext)
1KB
YAML
920B
Git Ignore
56B

The LLM identified 1 files worth highlighting for reuse:

This module provides a fully self-contained whitelist management system with export/import, merge with deduplication, and clear functionality. It handles file reading via FileReader, validates the imported data structure (array, required fields), and merges without duplicates using a Set. The module exposes clean functions (exportWhitelist, importWhitelist, mergeWhitelists, clearWhitelist, loadWhitelist, saveWhitelist) that could be extracted and reused in any client-side project needing persistent user or item management. The validation and merge logic demonstrate above-average data engineering skill for a browser-based utility.

file: src/utils/whitelist-manager.ts ↗ | tags: #file-export-import #localstorage-management #deduplication #callback-pattern
Last analyzed: 2026-09-04 00:27:31.284974
Next check: 2026-09-11 00:27:31.280444
$ submit: