What is Filestorage?
- Native onchain storage for static assets such as websites, metadata, images, and configuration files.
- Files are broken into chunks, validated by the Filestorage contract, and replicated across all nodes on the chain.
- Content is served through built-in web servers on each node for fast reads.
How it works
- A chain owner allocates storage to an address.
- Upload tooling converts your files into EVM-compatible chunks and sends them as transactions to the Filestorage contract.
- Nodes store the chunks, replicate them, and expose them at predictable
/fs/<chain-name>/<uploader>/<path>endpoints.
When to use it
- Host dApp frontends and static sites without relying on external pinning services.
- Store NFT metadata and media next to your contracts.
- Keep deterministic configuration or reference files available to your application.
Getting started (high level)
- Choose a SKALE Chain and obtain its RPC endpoint.
- Request storage allocation from the chain owner or the SKALE team.
- Use the latest Filestorage tooling (reach out to the team for SDKs and examples) to reserve space, upload files, and retrieve them via the
/fspath.
Accessing content
- Addresses in paths must be lowercase and omit the
0xprefix. - Example pattern:
https://<endpoint>/fs/<chain-name>/<uploader-address>/<path/to/file>. - Any node serving the chain can respond with the same content, since files are replicated across the validator set.
Need help with tooling or migrations? The team can provide updated SDKs, examples, and recommended flows for your use case.
Interested in Filestorage on SKALE? Click here to talk to the team
