A modern, lightweight browser extension for responsive testing and multi-device website simulation.
- Responsive Simulation Engine β Dynamic width/height rendering with real-time viewport simulation
- Device Presets β 20+ devices across 8 categories: Android phones, iPhones, Android tablets, iPads, smart watches, desktop screens, large displays, and TVs
- Multi-Device Preview β View multiple devices simultaneously in grid, row, column, or stacked layouts
- User Controls β Rotate device, zoom controls, refresh preview, custom screen dimensions
- Screenshot Support β Capture and export screenshots
- Dark/Light Mode β Toggle between dark and light themes
- Responsive Grid Overlay β Visual grid for testing responsive breakpoints
| Area | Technology |
|---|---|
| Frontend | React 18 |
| Language | TypeScript |
| Styling | Tailwind CSS |
| Build Tool | Vite |
| State Management | Zustand |
| Extension | Manifest V3 |
# Install dependencies
npm install
# Start development
npm run dev
# Build extension
npm run buildsrc/
βββ App.tsx # Main application shell
βββ main.tsx # Entry point
βββ index.css # Global styles
βββ background/
β βββ index.ts # Service worker & background logic
βββ components/
β βββ TopToolbar.tsx # Top control toolbar
β βββ DeviceSidebar.tsx # Device selection sidebar
β βββ PreviewArea.tsx # Responsive preview rendering
β βββ ViewportFrame.tsx # Individual device viewport
β βββ MultiDeviceControls.tsx # Multi-device layout controls
β βββ StatusBar.tsx # Bottom status bar
βββ hooks/
β βββ useViewport.ts # Viewport-related hooks
βββ store/
β βββ deviceStore.ts # Zustand global state store
βββ types/
β βββ index.ts # TypeScript type definitions
βββ utils/
β βββ devicePresets.ts # Device preset data & constants
β βββ helpers.ts # Utility functions
βββ content/
βββ index.ts # Content script for web pages
βββ content.css # Content script styles