- Local Storage Management: View, copy, paste, and clear local storage data on a per-page basis
- Session Storage Management: Manage session storage data with full control
- Cookie Management: Manage cookies with detailed attributes
- JSON Format: Copy/paste operations for all data in JSON format
- Detailed View: Manage key-value pairs individually for each storage type
- Modern Interface: User-friendly interface designed with Tailwind CSS
- Safe Operations: Secure data deletion with confirmation prompts
- Real-time: Instant data count display
🎉 StorageNinja is now live on Chrome Web Store!
Simply click the link above and hit "Add to Chrome" to install the extension instantly.
- Clone the repository:
git clone https://github.com/osmnnl/StorageNinja.git - Go to
chrome://extensions/and enable Developer mode - Click Load unpacked and select the project folder
After installing the extension, click the StorageNinja icon in the browser toolbar.
- 🟢 Local Storage: Persistent local storage
- 🟡 Session Storage: Session-based storage
- 🟠 Cookies: HTTP cookies
Four main operations are available for each storage type:
| Icon | Operation | Description |
|---|---|---|
| 📋 | Copy | Copies all data to clipboard in JSON format |
| 📥 | Paste | Loads JSON data from clipboard to storage |
| 🗑️ | Clear | Deletes all data (asks for confirmation) |
| 👁️ | Details | Shows key-value pairs in detail |
When you click the "Details" button, on the opened page:
- View all key-value pairs in a list
- Add new items (key-value)
- For each item individually:
- Copy (only that item)
- Paste (update that item's value)
- Delete (only that item)
storage-ninja/
├── manifest.json # Extension configuration
├── popup.html # Main popup interface
├── popup.js # Main popup JavaScript
├── content.js # Content script
├── background.js # Background service worker
├── styles.css # CSS styles
├── icons/ # Extension icons
│ ├── icon16.png
│ ├── icon48.png
│ └── icon128.png
└── README.md # This file
- Manifest V3 - Modern Chrome Extension standard
- HTML5 - Interface structure
- Tailwind CSS - Style framework
- Font Awesome - Icons
- Vanilla JavaScript - Functionality
- Chrome APIs - Storage, cookies, scripting APIs
The extension uses the following minimal permissions for enhanced security:
-
activeTab- Access only the currently active tab (no broad website access) -
storage- Chrome storage API for extension settings -
cookies- Cookie management on active tab only -
scripting- Dynamic script injection into active tab when needed -
clipboardRead- Read clipboard data for paste functionality -
clipboardWrite- Write to clipboard for copy functionality -
host_permissions–<all_urls>- Required by Chrome Manifest V3 to allow the background service worker to use the
chrome.cookiesAPI for the URL of the active tab. - Without host permissions, cookie operations (count, list, set, delete) are not available to the extension across sites.
- Required by Chrome Manifest V3 to allow the background service worker to use the
Why this is needed:
- In MV3, the
chrome.cookiesAPI is not available in content scripts and must be called from the background service worker. - The background script needs host permissions to read/write cookies for the domains you interact with. StorageNinja uses these permissions only to operate on the currently active tab’s URL and never sends data anywhere.
- All data is processed locally only
- No data is sent to external servers
- Content script is injected only when necessary
- Confirmation prompts for sensitive operations
- Chrome/Chromium browser
- Basic HTML/CSS/JavaScript knowledge
- Clone the project
- Load via "Load unpacked" from
chrome://extensions/page - Click "Reload" button after making changes
- View console logs in
Developer Tools > Console - Background script logs via "Inspect" link on extension page
- Popup debug with
F12key while popup is open
This project is released under the MIT License.
- Fork this repo
- Create a feature branch (
git checkout -b feature/new-feature) - Commit your changes (
git commit -am 'New feature: description') - Push your branch (
git push origin feature/new-feature) - Create a Pull Request
Use the Issues page for bugs or suggestions.
- Developer: GitHub Profile
- Email: [email protected]
⭐ Don't forget to star the project if you liked it!