Create an Arweave Manifest

Overview

Arweave Manifests can unlock new and unique experiences that can only be made possible on the Permaweb.

An Arweave Manifest is a mapping of Arweave Transaction IDs and friendly names. This map is put into a standardized, JSON structure and permanently stored on Arweave, and it allows users to create logical groupings of content. Arweave Gateways can interpret this structure, so users can then reference individual transactions by their file name and/or path.

Manifests allow you to use friendlier URLs like...

https://arweave.net/vsIpgW63WVa2d-iDSNmjMjw2IH18_RoGTtzTTk_uTr5/new_years_2022/balldrop.png
https://arweave.net/vsIpgW63WVa2d-iDSNmjMjw2IH18_RoGTtzTTk_uTr5/new_years_2022/selfie_with_anderson_cooper.png

...rather than opaque Arweave transaction IDs that ordinarily reference your data:
https://arweave.net/vsIpgW63WVa2d-iDSNmjMjw2IH18_RoGTtzTTk_uTr5
https://arweave.net/Ie42b_eBn1BhMgISPe5N3FdNGLPvoQcTtePfY09QPlw

With ArDrive, any Public Drive or Folder can be turned into a Manifest. The file names and paths would each be represented within the Arweave Manifest, making it easier for developers and users to reference their content by the names used on their local file systems.

Want to learn how it works and see some examples? Check out our detailed https://ardrive.atlassian.net/wiki/spaces/help/pages/359530513 technology article.

Instructions

Creating an Arweave Manifest is only a matter of a couple easy steps after you have created your Public Drive and uploaded your files or web app assets.

  1. Navigate to your Public Drive, and click the “New” button and select “Create Manifest”.

  2. Enter in the name for your Arweave Manifest and click “Next”

  3. Select the location to create the Manifest out of.

    1. Selecting the top level of the Drive will create a manifest out of all of the Drive’s content, including subfolders.

      Create a Manifest using the Root of a Drive
    2. Selecting an individual folder will create a manifest out of all of that Folder’s content, including subfolders

      Create a manifest using a Sub Folder
  4. View and confirm the price of the Manifest and upload it to ArDrive

After the Manifest is created and uploaded, it will have a special icon indicating that it is an Arweave Manifest.

Congratulations! You can now access any of the Arweave Transactions referenced in the Manifest using the its friendlier file path and name. See our technical article on https://ardrive.atlassian.net/wiki/spaces/help/pages/359530513 for more references.

Clicking the “Preview Link” for a Manifest will load the default index.html page referenced within the Manifest.

Clicking the “Download Link” for a Manifest will download the default index.html page referenced within the Manifest.

No index.html? No problem! The first file contained in the Manifest will act as the default file that is loaded when the Manifest is previewed, and all other files can still be referenced with their friendly names.

Raw Manifest JSON data cannot be previewed or downloaded at this time.

Updating a Manifest

Need to make changes to your permanent web app? ArDrive makes it easy for users to quickly adjust a specific file or folder, and then recreate a new manifest containing the updated transaction IDs and friendly names. Just like any other file in ArDrive, a new Manifest revision can be created by reusing the existing Manifest name, allowing permanent version control over your site or app.

Want it Custom?

The ArDrive CLI also allows you to create a manifest out of a given Public Drive or Folder, and takes it a step further.

With the CLI, developers can quickly create and export a preview of their manifest. This preview can be modified in a standard text editor to fit any use case, like adding other Arweave Transaction IDs that aren’t contained within your Drive, or changing the friendly names. Once the manifest has been customized, the CLI can quickly upload it, using the custom “Arweave Manifest” content type.

Detailed instructions can be found right in our ArDrive CLI Github Repository.