πŸ“¦Storage Types

When it comes to uploading your file and generating a digital asset, there are currently a few types of storage options available through the imagiNation platform.

Table of contents

CKBFS & IPFS

Type: CKBFS

  • Creates an indestructible Cell that stores your asset on-chain

  • Costs around 200 CKB

  • Additional cost on-top of Spore cost

    • e.g. A default CKBFS mint would be ~500 CKB

  • Currently limited to 500kb/file

  • Potential to be enhanced for more complex File Storage

CKBFS is a storage solution that uses the Common _K**nowledge **B_ase (Nervos Network) to store your data on-chain using Witness data at a low cost to host a Cell.

This generates a secondary Cell that is used as the reference in your main asset such as a Spore. Depending on the Style chosen, IPFS may be used alongside CKBFS.

The average cost for a CKBFS Cell is ~200 CKB and is separate from any other cell created, such as when minting a Spore.

Type: IPFS

  • Stored off-chain and pinned by imagiNation

  • No extra cost

  • Max file size of 5MB

IPFS is a traditional "Web3" storage popularized by Ethereum and the need to store large sets of data off-chain.

We use IPFS under the hood to store metadata used by the imagiNation platform and for referencing your digital asset. Depending on the Style chosen, IPFS will store your data in a different way.

We provide IPFS as a solution for storing your files and using an ipfs://<CID> reference in your digital asset, whether its a Spore, CoTA NFT or other form of digital asset.

Storage Styles

Both CKBFS & IPFS support the same Styles as IPFS is heavily used for off-setting costs so even under CKBFS, IPFS may be used.

Style: Compact

  • Mint your asset at a low cost while keeping all metadata on IPFS

  • Type: CKBFS sets the file reference in the JSON Object to ckbfs://<TypeId>

  • Only stores IPFS reference

  • Average CKB requiremed for a Spore Cell: ~205 CKB

Compact Example

Style: Content (Default)

This is the default behaviour which stores a reference to the asset directly while maintaining a reference to an IPFS JSON Object which contains metadata.

  • Average CKB requiremed for a Spore Cell: ~290 CKB

Content Example

Style: Object

This is similar to Cell Data - Object but keeps the file data seperated and only a reference in the metadata.

  • Average CKB requiremed for a Spore Cell: ~550 CKB

    • Cell cost increases based on character count of the Item Properties fields

    • The length of text for each property and amount of properties will increase cost exponentially

  • Metadata used by the platform is not nested in the Spore

    • Extra keys found in the JSON Object Example such as (creator, fileType, category, chain, standard, isNation) are not part of the on-chain data

Object Example

IPFS JSON Object Example

Cell Data

This uses the data field of the Spore Cell to hold your file and/or data directly. This method requires 1 CKB for each byte of data being minted.

Style: Native Cell Data (Default)

Your assets file data is stored directly in the Spores content field and metadata is an IPFS reference attached to the contentType.

  • Original storage type with Spore integration on imagiNation

  • File size directly effects the cost of the Spore Cell

  • High Intrinsic Value

Native Cell Data Example

Style: Native Cell Object

Not yet implemented.

This style stores the required Metadata on-chain as well as the file data itself

  • Highest Intrinsic Value

  • Stores File Data + Metadata on-chain

  • Metadata reduces total file size allocation

    • i.e. The more traits you have the smaller the file attached can be

Object Example

Last updated