# Overview
- ArchiveBox is a command line tool, self-hostable web-archiving server, and Python library all-in-one. It's available as a Python3 package or a Docker image, both methods provide the same CLI, Web UI, and on-disk data format.
+ ArchiveBox is a command line tool, self-hostable web-archiving server, and Python library all-in-one. It can be installed on Docker, macOS, and Linux/BSD, and Windows. You can download and install it as a Debian/Ubuntu package, Homebrew package, Python3 package, or a Docker image. No matter which install method you choose, they all provide the same CLI, Web UI, and on-disk data format.
- It works on Docker, macOS, and Linux/BSD. Windows is not officially supported, but users have reported getting it working using the WSL2 + Docker.
-
- To use ArchiveBox you start by creating a folder for your data to live in (it can be anywhere on your system), and running `archivebox init` inside of it. That will create a sqlite3 index and an `ArchiveBox.conf` file. After that, you can continue to add/remove/search/import/export/manage/config/etc using the CLI `archivebox help`, or you can run the Web UI (recommended):
- ```bash
- archivebox manage createsuperuser
- archivebox server 0.0.0.0:8000
- open http://127.0.0.1:8000
- ```
+ To use ArchiveBox you start by creating a folder for your data to live in (it can be anywhere on your system), and running `archivebox init` inside of it. That will create a sqlite3 index and an `ArchiveBox.conf` file. After that, you can continue to add/export/manage/etc using the CLI `archivebox help`, or you can run the Web UI (recommended).
The CLI is considered "stable", the ArchiveBox Python API and REST APIs are in "beta", and the [desktop app](https://github.com/ArchiveBox/desktop) is in "alpha" stage.
@@ -252,32 +276,19 @@ Description:
```bash
# archivebox
[args]
+
+ # on Debian/Ubuntu
+ sudo add-apt-repository -u ppa:archivebox/archivebox
+ apt install archivebox
+
+ # on macOS
+ brew install archivebox/archivebox/archivebox
```
- First install the system, pip, and npm dependencies:
+ Initialize your archive in a directory somewhere and add some links:
```bash
- # Install main dependendencies using apt on Ubuntu/Debian, brew on mac, or pkg on BSD
- apt install python3 python3-pip python3-dev git curl wget chromium-browser youtube-dl
-
- # Install Node runtime (used for headless browser scripts like Readability, Singlefile, Mercury, etc.)
- curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - \
- && echo 'deb https://deb.nodesource.com/node_14.x $(lsb_release -cs) main' >> /etc/apt/sources.list \
- && apt-get update \
- && apt-get install --no-install-recommends nodejs
-
- # Make a directory to hold your collection
- mkdir archivebox && cd archivebox # (can be anywhere, doesn't have to be called archivebox)
-
- # Install the archivebox python package in ./.venv
- python3 -m venv .venv && source .venv/bin/activate
- pip install --upgrade archivebox
-
- # Install node packages in ./node_modules (used for SingleFile, Readability, and Puppeteer)
+ mkdir ~/archivebox && cd archivebox
npm install --prefix . 'git+https://github.com/ArchiveBox/ArchiveBox.git'
- ```
-
- Initialize your archive and add some links:
- ```bash
archivebox init
archivebox add 'https://example.com' # add URLs as args pipe them in via stdin
archivebox add --depth=1 https://example.com/table-of-contents.html
@@ -396,7 +407,7 @@ Description:
- [Supported Outputs](https://github.com/ArchiveBox/ArchiveBox/wiki#can-save-these-things-for-each-site)
- [Scheduled Archiving](https://github.com/ArchiveBox/ArchiveBox/wiki/Scheduled-Archiving)
- [Publishing Your Archive](https://github.com/ArchiveBox/ArchiveBox/wiki/Publishing-Your-Archive)
- - [Chromium Install](https://github.com/ArchiveBox/ArchiveBox/wiki/Install-Chromium)
+ - [Chromium Install](https://github.com/ArchiveBox/ArchiveBox/wiki/Chromium-Install)
- [Security Overview](https://github.com/ArchiveBox/ArchiveBox/wiki/Security-Overview)
- [Troubleshooting](https://github.com/ArchiveBox/ArchiveBox/wiki/Troubleshooting)
- [Python API](https://docs.archivebox.io/en/latest/modules.html)
diff --git a/package.json b/package.json
index c7a61c1e..8d88a3fd 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "archivebox",
- "version": "0.4.24",
+ "version": "0.5.0",
"description": "ArchiveBox: The self-hosted internet archive",
"author": "Nick Sweeting
",
"license": "MIT",