1
0
mirror of https://github.com/oceanprotocol/docs.git synced 2024-11-26 19:49:26 +01:00
docs/developers/uploader/README.md
Jamie Hewitt 659570cda0
The Uploader Docs (#1256)
* Adding initial page as a user guide on interacting witht the DBS

* Updating steps and instructions for the DBS user guide

* updating the navigation

* updating arweave user guide

* Adding links to the dbs upload instructions

* Adding images

* Adding images into the guide

* CHanging DBS to Uploader in user guide

* moved uploader (ex dbs) pages from gitbook

* remove all refs to dbs

* change DBSClient to UploaderClient

* removed more dbs refs

* Update README.md

- adjust some links
- fix some texts

* updated images uploader

* adding format to codeblocks

* updated images

* added uploader to asset hosting

* fix some text

* fix typo

* fix link

* replaced more images

* added text to asset hosting section related to uploader

* changed "Using Arweave with Uploader"

* removed references to "storage management"

* added missing link

* move uploader.js section from main page

* added to uploader's main readme

* rewrite uploader ui docs

* added expandable component to api calls in uploader.js

* rewrite API main paragraph in uploader.js

* fix some dbs refs

* added more to uploader ui

* moved uploader in the summary page

* added arcade to "How to store an asset on Arweave with the Uploader UI"

* added uploader links

* Update uploader.md

update arcade link

* Update uploader.md

* Updating diagrams

* Update to mention IPFS support

* Minor change in README.md

---------

Co-authored-by: Lcdo-Jeremy <enzo-vezzaro@live.it>
Co-authored-by: Ana Loznianu <ana@oceanprotocol.com>
Co-authored-by: mihaisc <mihai@oceanprotocol.com>
2024-02-09 15:27:14 +03:00

4.5 KiB

Uploader

What's Uploader?

The Uploader represents a cutting-edge solution designed to streamline the upload process within a decentralized network. Built with efficiency and scalability in mind, Uploader leverages advanced technologies to provide secure, reliable, and cost-effective storage solutions to users.

Architecture Overview

Uploader is built on a robust architecture that seamlessly integrates various components to ensure optimal performance. The architecture consists of:

  • Uploader API Layer: Exposes both public and private APIs for frontend and microservices interactions, respectively.
  • 1-N Storage Microservices: Multiple microservices, each specializing in different storage types, responsible for handling storage operations.
  • IPFS Integration: Temporary storage using the InterPlanetary File System (IPFS).

Streamlined File Uploads

Uploader streamlines the file uploading process, providing users with a seamless experience to effortlessly incorporate their digital assets into a decentralized network. Whether you're uploading images, documents, or other media, Uploader enhances accessibility and ease of use, fostering a more decentralized and inclusive digital landscape.

Unique Identifiers

Obtain unique identifiers such as hashes or CIDs for your uploaded files. These unique identifiers play a pivotal role in enabling efficient tracking and interaction with decentralized assets. By obtaining these identifiers, users gain a crucial toolset for managing, verifying, and engaging with their digital assets on the decentralized network, ensuring a robust and secure mechanism for overseeing the lifecycle of their contributed files.

Features

Uploader offers a range of powerful features tailored to meet the needs of any decentralized storage:

  • User Content Uploads: Users can seamlessly upload their content through the user-friendly frontend interface.
  • Payment Handling: Uploader integrates with payment systems to manage the financial aspects of storage services.
  • Decentralized Storage: Content is pushed to decentralized storage networks like Filecoin and Arweave for enhanced security and redundancy.
  • API Documentation: Comprehensive API documentation on each repo to allow users to understand and interact with the system effortlessly.
  • Uploader.js: a TypeScript library designed to simplify interaction with the Uploader API. This library provides a user-friendly and intuitive interface for calling API endpoints within the Uploader Storage system.

Components

Microservices:

User Workflow

Uploader simplifies the user workflow, allowing for easy management of storage operations:

  • Users fetch available storage types and payment options from the frontend.
  • Quotes for storing files on the Microservice network.
  • Files are uploaded from the frontend to Uploader, which handles temporary storage via IPFS.
  • The Microservice takes over, ensuring data is stored on the selected network securely.
  • Users can monitor upload status and retrieve links to access their stored content.

File storage flow

Ocean Uploader - storage flow 1

File retrieval flow

Ocean Uploader - storage flow 1

API Documentation

Documentation is provided in the repos to facilitate seamless integration and interaction with the Uploader. The documentation outlines all API endpoints, payload formats, and example use cases, empowering developers to effectively harness the capabilities of the Uploader solution.

Troubleshooting

Did you encounter a problem? Open an issue in Ocean Protocol's repos: