Quick Start

These are rough instructions for a rough command-line tool. There is no GUI, yet.

  1. Request and download an export from your Mastodon instance (e.g. archive-20230720182703-36f08a7ce74bbf59f141b496b2b7f457.tar.gz)
  2. Download a release of pagefind and install it or use a precompiled binary
  3. Download a release of Fossilizer - there is no installation, just a standalone command.
    • Note: on macOS, you'll need to make an exception to run fossilizer in Security & Privacy settings
  4. Make a working directory somewhere
  5. Initialize the data directory:
    fossilizer init
    
  6. Ingest your Mastodon export and extract media attachments:
    fossilizer import archive-20230720182703-36f08a7ce74bbf59f141b496b2b7f457.tar.gz
    
  7. Build your static website in the build directory:
    fossilizer build
    
  8. Build pagefind assets for search:
    pagefind --keep-index-url --site build
    
  9. Serve the build directory up with a local web server - the --open option will attempt to open a browser:
    fossilzer serve --open
    
  10. Enjoy a static web site of your Mastodon toots.

Tips

  • Try fossilizer by itself for a list of subcommands, try --help as an option to get more details on any command.

  • Try fossilizer upgrade to upgrade the SQLite database and other assets when you download a new version. This is not (yet) automatic.

  • data/config.toml can be used to set many as-yet undocumented configuration options.

  • data/data.sqlite3 is a a persistent SQLite database that accumulates all imported data.

  • data/media is where media attachments are unpacked.

  • You can repeatedly import data and import from multiple Mastodon instances. Everything will be merged.

  • Try fossilizer init --customize, which unpacks the following for customization:

    • a data/web directory with static web assets that will be copied into the build directory

    • a data/templates directory with Tera templates used to produce the HTML output

    • Note: this will not overwrite the database for an existing data directory, though it will overwrite any existing templates or web directories.