ArchiveBox logo

ArchiveBox

Open source self-hosted web archiving

Alternative to: wayback machine, pocket, instapaper, archive.today


About Versions (33)

v0.4.9

2020-07-28

image

πŸŒ… v0.4 is officially released. This is a long-awaited 3rd-pass review over every corner of the archivebox UX. It adresses many of the fundamental shortcomings around index consistency by using a new SQLite database, with automatic migrations provided by django. It also smooths many of the rough edges, adds a new admin Web UI, a rich new CLI, closes 40+ github tickets, and is the first official release available on PyPI.

Enjoy!

πŸŽ‰ Big thanks to everyone who helped! Especially the Monadical team @cdvv7788 @apkallum @afreydev and also @drpfenderson who helped us track down the last few index importing bugs! πŸŽ‰

The docs still have some work left to finish updating, but the CLI help text is all up-to-date (when in doubt, just pass --help).
Let us know if you find any rough edges here: https://github.com/pirate/ArchiveBox/issues/new/choose

pip install archivebox

cd path/to/your/archive/folder

archivebox init  # this doubles as the migrate command, it will safely upgrade existing index files automatically
archviebox add 'https://example.com'
archviebox add 'https://getpocket.com/users/USERNAME/feed/all' --depth=1
archivebox status
archivebox server
archivebox help

Or if you prefer docker, the CLI works exactly the same archivebox [subcommand] [...args]:

docker run -v $PWD:/data nikisweeting/archivebox init
docker run -v $PWD:/data nikisweeting/archivebox add 'https://example.com'
docker run -v $PWD:/data -p 8000 nikisweeting/archivebox server
version: '3.7'

services:
    archivebox:
        image: nikisweeting/archivebox:latest
        command: server 0.0.0.0:8000
        stdin_open: true
        tty: true
        ports:
            - 8000:8000
        environment:
            - USE_COLOR=True
        volumes:
            - ./data:/data

Screenshots

Screen Shot 2020-07-28 at 6 19 48 AM

New Features

A bunch of big changes:

  • pip install archivebox is now available
  • full transition to Django Sqlite DB with migrations (making upgrades between versions much safer now)
  • maintains an intuitive and helpful CLI that’s backwards-compatible with all previous archivebox data versions
  • uses argparse instead of hand-written CLI system: see archivebox/cli/archivebox.py
  • new subcommands-based CLI for archivebox (see below)
  • new Web UI with pagination, better search, filtering, permissions, and more
  • 30+ assorted bugfixes, new features, and tickets closed

For more info, see: https://github.com/pirate/ArchiveBox/wiki/Roadmap

Released in this version:

Install Methods:

Command Line Interface:

Web UI:

  • βœ… / Main index
  • βœ… /add Page to add new links to the archive (but needs improvement)
  • βœ… /archive/<timestamp>/ Snapshot details page
  • βœ… /archive/<timestamp>/<url> live wget archive of page
  • βœ… /archive/<timestamp>/<extractor> get a specific extractor output for a given snapshot
  • βœ… /archive/<url> shortcut to view most recent snapshot of given url
  • βœ… /archive/<url_hash> shortcut to view most recent snapshot of given url
  • βœ… /admin Admin interface to view and edit archive data
  • βœ… /old.html Backwards-compatible static HTML index for the previous version

Python API:

(Red ❌ features are still unfinished and will be released in later versions)