π¦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