Closes #252, Closes #250 ## Changes - ReplayWeb.page uses MKDocs for documentation now! - Requires both [`mkdocs-macros`](https://mkdocs-macros-plugin.readthedocs.io/en/latest/) and [`mkdocs-redirects`] (https://github.com/mkdocs/mkdocs-redirects) plugins to be installed - Redirects existing docs pages to their new locations under either `/embedding` or `/user-guide` - Unused images have been removed - Adds new ReplayWeb.page branding! All pages have received copy edits. All references to future (or previously) planned features have been removed. More major content changes of note are as follows: ### Supported Locations - Made into a page, no longer a table. Locations are either supported or not listed. ### Offline Use - Removes browser cache section, adds improved PWA install and uninstall instructions. - Removes navigation instructions to GitHub's releases section in favour of a link ### Supported Formats - Moved to the User Guide homepage - Updated the format support ### Exploring Archives - Example links for showcasing features have been moved to their respective feature documentation section on this page ### Remove Usage, Examples, and Troubleshooting Pages - Usage content is covered in the user guide index - Troubleshooting content has been added to a question section on the getting started page about WARC vs WACZ. - Examples are now Featured Projects on the docs homepage! ### Build Process - Removes Jekyll & related site assets. - Adds new GitHub action for publishing - Adds a python macro to dynamically load the replayweb.page version from package.json - Relocates replayweb.page site content under /site (including docs) - Some assets (favicon, logo) and sw.js/ui.js automatically copied into /site --------- Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>
3.2 KiB
ReplayWeb.page
Serverless Web Archive Replay
Embedded Viewer Usage:
ReplayWeb.page provides a full web archive replay system running directly in the browser, available at: https://replayweb.page/
For full user docs, see: https://replayweb.page/docs.
See CHANGES.md for changes in the latest release.
The ReplayWeb.page App can be downloaded from the Releases page.
Embedding Guide
See the Embedding Guide for more info on embedding web archives in other sites.
What's in this repo
ReplayWeb.page is a static web site / offline web app + Electron app.
This repository contains the frontend UI for the replay system, while the backend is provided via a service worker implementation found at: https://github.com/webrecorder/wabac.js
The frontend is loaded from ui.js, while the backend service/web worker is loaded from sw.js.
This repository contains:
- The built assets for the site hosted at https://replayweb.page/ via GitHub Pages
- The package for npm module: https://www.npmjs.com/package/replaywebpage
- A build system for https://replayweb.page and ReplayWeb.page App.
- Docs hosted at: https://replayweb.page/docs
- App releases at: https://github.com/webrecorder/replayweb.page/releases
Running ReplayWeb.page
To run ReplayWeb.page and view web archives, a regular HTTP server is all that is needed.
ReplayWeb.page can run with any HTTP server locally. For example, you can run http-server -p 9990 or python -m http.server 9990 to run a static web server in the directory of this repository. Then, simply load http://localhost:9990/ and you'll have replayweb.page running locally.
Developing ReplayWeb.page
ReplayWeb.page is built as a Node package can be installed using yarn:
yarn install
The package provides various commands that can be used with yarn:
-
yarn start-dev- to run in dev mode with Webpack dev server on port 9990. Autobuilds dev assets. -
yarn build- to build production assets sw.js, ui.js -
yarn start-prod- to run production site on port 9990, with previously built assets -
yarn start-electron- to start electron in dev mode, with previously built assets -
yarn dist- to build production assets + Electron app (in dist/)
The static assets are placed in the root index.html, sw.js and ui.js, and can be used with any HTTP server.
For service workers to work, they must be served from either localhost or an HTTPS endpoint.
See the user docs for additional info about using ReplayWeb.page
LICENSE
ReplayWeb.page is made available under the AGPLv3 License.
If you would like to use it under a different license or have a question, please reach out as that may be a possibility.
Contributing and Bug Reports
Contributions are definitely welcome!
As this is still a new project and rapidly evolving, please open an issue first before submitting a pull request.