{"id":13538187,"url":"https://github.com/wingleung/save-page-state","last_synced_at":"2025-05-07T13:05:31.892Z","repository":{"id":33936350,"uuid":"161458504","full_name":"wingleung/save-page-state","owner":"wingleung","description":"A chrome extension to save the state of a page for further analysis","archived":false,"fork":false,"pushed_at":"2023-01-14T00:04:59.000Z","size":997,"stargazers_count":233,"open_issues_count":20,"forks_count":14,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-05-07T13:05:26.444Z","etag":null,"topics":["analysis","chrome-extension","devtools","mhtml","screenshot","snapshot","state"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wingleung.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-12-12T08:45:03.000Z","updated_at":"2025-01-29T19:36:54.000Z","dependencies_parsed_at":"2023-01-16T22:45:40.789Z","dependency_job_id":null,"html_url":"https://github.com/wingleung/save-page-state","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wingleung%2Fsave-page-state","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wingleung%2Fsave-page-state/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wingleung%2Fsave-page-state/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wingleung%2Fsave-page-state/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wingleung","download_url":"https://codeload.github.com/wingleung/save-page-state/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252883211,"owners_count":21819160,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analysis","chrome-extension","devtools","mhtml","screenshot","snapshot","state"],"created_at":"2024-08-01T09:01:07.524Z","updated_at":"2025-05-07T13:05:31.855Z","avatar_url":"https://github.com/wingleung.png","language":"JavaScript","funding_links":[],"categories":["\u003ca id=\"9eee96404f868f372a6cbc6769ccb7f8\"\u003e\u003c/a\u003e新添加的","\u003ca id=\"9eee96404f868f372a6cbc6769ccb7f8\"\u003e\u003c/a\u003e工具"],"sub_categories":["\u003ca id=\"31185b925d5152c7469b963809ceb22d\"\u003e\u003c/a\u003e新添加的"],"readme":"\u003cdiv align=\"center\"\u003e\n\t\u003cbr\u003e\n\t\u003cbr\u003e\n\t\u003cimg width=\"126\" src=\"media/header.png\" alt=\"Save Page State\"\u003e\n  \u003ch3\u003eSave Page State\u003c/h3\u003e\n\t\u003cbr\u003e\n\t\u003cbr\u003e\n\u003c/div\u003e\n\n\u003e A browser extension to save the state of a page for further analysis\n\n[![Chrome Web Store](https://img.shields.io/chrome-web-store/v/aokllhajmkihfihciggkmpgdhgecgaic.svg)](https://chrome.google.com/webstore/detail/save-page-state/aokllhajmkihfihciggkmpgdhgecgaic) ![](https://img.shields.io/david/vrtdev/save-page-state.svg) ![](https://img.shields.io/david/dev/vrtdev/save-page-state.svg)\n[![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg)](LICENSE)\n\n## Highlights\n\n- [DOM Snapshot](#dom-snapshot)\n- [MHTML file](#mhtml-file)\n- [Screenshot](#screenshot)\n- [Metadata](#metadata)\n\n## Install\n\nInstall the extension from the [chrome web store](https://chrome.google.com/webstore/detail/save-page-state/aokllhajmkihfihciggkmpgdhgecgaic) or [firefox add-ons](https://addons.mozilla.org/nl/firefox/addon/save-page-state/).\n\nOr create a custom extension with this repo with limited access permission\n\n## Customize\n\n### Restrict Access Permission\n\nIn manifest.json (`/src/manifest.json`), replace `\u003call_urls\u003e` with your own project URL pattern you wish to save the page states from.\n\n```javascript\n{\n\t...\n\t\"content_scripts\": [\n\t\t{\n\t\t\t\"matches\": [\"\u003call_urls\u003e\"], // \u003c- change this to your url pattern\n\t\t\t\"js\": [\"js/content.js\"]\n\t\t}\n\t],\n\t\"permissions\": [\"activeTab\", \"pageCapture\", \"\u003call_urls\u003e\"]  // \u003c- change this to your url pattern\n\t...\n}\n```\n\n### Install dependencies\n\n```\nnpm i\n```\n\n### Build\n\n```\nnpm run build\n```\n\nBuilds to `/build/prod`\n\n### Publish\n\n#### Chrome\n\nCreate a zip file from `/build/prod/chrome`\n[upload it to the chrome web store](https://developer.chrome.com/webstore/publish#upload-your-app).\n\n#### Firefox\n\nCreate a zip file from `/build/prod/firefox`\n[upload it to the firefox developer hub](https://addons.mozilla.org/nl/developers/).\n\n### Development\n\n```\nnpm run dev:chrome // builds to /build/dev/chrome\nnpm run dev:firefox // builds to /build/dev/firefox\n```\n\n## Features\n\n### DOM Snapshot\n\nAn HTML file containing the state of the DOM.\n\n### MHTML file (chrome only for now)\n\n\u003e **Note** Firefox doesn't support saving an MHTML file natively yet.\n\nAn MHTML page with encapsulated resources, so you could immediately check the layout by opening the MHTML file in Chrome.\n\n### Screenshot\n\nA PNG image of the viewport.\n\n### Metadata\n\nText file with extra metadata useful for debugging with the exact same state.\n\n- **height**: viewport height\n- **width**: viewport width\n- **incognito**: is page loaded in incognito mode\n- **status**: page loading status\n- **title**: page title\n- **url**: page URL\n- **browser**: browser\n- **browserVersion**: browser version\n- **os**: operating system\n\n## Maintainer\n\n[![Wing Leung](https://github.com/wingleung.png?size=100)](https://github.com/wingleung)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwingleung%2Fsave-page-state","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwingleung%2Fsave-page-state","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwingleung%2Fsave-page-state/lists"}