Automated Browser Persona & Session Recorder Extension
⚡ Quickstart • ✨ Features • 🏛️ Architecture • 📊 Benchmarks • 🤝 Contributing
Mimik-Plus is a manifest v3 browser automation extension engineered for synthetic session playback, behavioral persona emulation, and web interaction capture.
Note
This project is maintained under the MasterPandaa Engineering Lab ecosystem, strictly adhering to anti-slop technical documentation standards, deterministic test verification, and clean architecture.
| Dimensi | Pendekatan Konvensional | Pendekatan Mimik-Plus |
|---|---|---|
| Workflow Efficiency | ❌ Manual repetition of complex multi-step browser workflows across development, staging, and QA environments. | ⚡ Records user DOM events and executes automated, reproducible session replays with variable timing and payload parameters. |
| Operational Reliability | 🎯 Heuristic DOM selector engine combines ID, XPath, semantic tags, and aria-labels for resilient element targeting. | |
| Privacy & Security | 🔓 Automation extensions that harvest user keystrokes and transmit sensitive cookies to external servers. | 🛡️ 100% client-side execution with zero telemetry and strictly isolated local storage persistence. |
| Developer Experience | 🐌 Heavyweight external test runners requiring complex Node.js runtime environments for simple task automation. | 🚀 Zero external dependencies: loads directly as an unpacked extension in Chrome, Edge, and Brave. |
-
DOM Interaction Recorder (
Event Listener Interceptor):- Captures clicks, inputs, scrolls, and navigation events with millisecond-precision timestamps.
-
Resilient Element Resolution (
Multi-Strategy DOM Matcher):- Resolves elements using hierarchical selector cascades to withstand UI layout refactoring.
-
Configurable Playback Profiles (
Deterministic Execution Engine):- Allows playback throttling, loop counts, and variable delays to simulate natural human usage.
-
Session Export & Import (
JSON Workflow Format):- Exports recorded action matrices for distribution across engineering teams and QA runners.
The system follows a modular pipeline ensuring clear separation of concerns, testability, and deterministic performance.
| Komponen | Layer | Teknologi | Peran & Deskripsi Teknis |
|---|---|---|---|
| Entry Point | Interface | Manifest V3 Action Popup |
Handles user interaction, input validation, and request routing |
| Core Engine | Business Logic | DOM Event Synthesis Engine |
Executes core state processing, computational logic, and transformations |
| Data Layer | Persistence | chrome.storage.local Store |
Manages transactional data storage, caching, and state integrity |
| Security Gate | Audit & Guard | Content Security Policy Strict |
Enforces input sanitization, access boundaries, and zero telemetry |
- Google Chrome >= 115, Microsoft Edge, or Chromium-based browser
- Node.js >= 18.0 (for development build)
git clone https://github.com/MasterPandaa/Mimik-Plus.git
cd Mimik-Plus
npm install
npm run build# Open chrome://extensions
# Enable 'Developer mode'
# Click 'Load unpacked' and select the 'dist' directory# Open target web page
# Click Mimik-Plus mascot in toolbar
# Click 'Record' to capture actions or 'Play' to execute saved sequencesAkses layanan pada chrome://extensions.
- ⚡ Execution Performance:
Under 5MB memory footprint, sub-1ms event interception overhead, 100% local data privacy. - 🛡️ SAST Security Clearance: Audited against common vulnerability patterns (OWASP Top 10 / Bandit / Semgrep). High/Critical Vulnerabilities: 0.
- 🔒 Data Privacy: Local-first or strictly isolated operational context with zero undisclosed external telemetry.
Mimik-Plus/
├── assets/
│ ├── banner.svg # Official Hero Banner with Mimik Robot Mascot
│ └── banner-architecture.svg # Architecture & DOM Event Loop Banner
├── src/
│ ├── background/ # Manifest V3 service worker scripts
│ ├── content/ # Content scripts injected into active pages
│ ├── popup/ # Extension control panel React/TypeScript UI
│ └── core/ # DOM recording and event synthesis engine
├── manifest.json # Chrome Extension Manifest V3 configuration
├── vite.config.ts # Vite build bundler configuration
└── README.md # Official technical documentation
Contributions, issue reports, and technical discussions are welcome:
- Fork the repository.
- Create a feature branch (
git checkout -b feature/NewFeature). - Commit your changes (
git commit -m "feat: Implement new capability"). - Push to your branch (
git push origin feature/NewFeature). - Open a Pull Request with verifiable test evidence.
Distributed under the MIT License. See LICENSE for complete terms.
Engineered and maintained by:
Muhammad Luthfi Abdillah (@MasterPandaa)
Portfolio • LinkedIn • Kaggle • Email