Files
webarchive/README.md
2023-03-27 22:37:36 +03:00

1.5 KiB

Own Webarchive

Aimed to be a simple, fast and easy-to-use webarchive for personal or home-net usage.

Requirements

  • Golang 1.19 or higher
  • wkhtmltopdf binary in $PATH (to save pages in pdf)

Usage

1. Start the server

go run ./cmd/server/main.go

2. Add a page

curl -X POST --location "http://localhost:5001/pages" \
    -H "Content-Type: application/json" \
    -d "{
          \"url\": \"https://github.com/wkhtmltopdf/wkhtmltopdf/issues/1937\",
          \"formats\": [
            \"all\"
          ]
        }" | jq .

3. Get the page's info

curl -X GET --location "http://localhost:5001/pages/$page_id" | jq .

where $page_id — value of the id field from previous command response. If status field in response is success (or with_errors) - the results field will contain all processed formats with ids of the stored files.

4. Open file in browser

xdg-open http://localhost:5001/pages/$page_id/file/$file_id

Where $page_id — value of the id field from previous command response, and $file_id — the id of interesting file.

5. List all stored pages

curl -X GET --location "http://localhost:5001/pages" | jq .

Roadmap

  • Save page to pdf
  • Save URL headers
  • Save page to the single-page html
  • Save page to html with separate resource files (?)
  • Optional authentication
  • Multi-user access
  • Support PostgreSQL
  • Extend configuration