Upload Files with Hasura and Hasura Storage
Blog post from Nhost
Hasura Storage, developed by Nhost, addresses the lack of native file uploading and downloading capabilities in Hasura by serving as a supplementary service that works alongside Hasura and Amazon S3. This open-source solution allows users to manage files through Hasura Storage, which acts as the entry point for file operations, while storing the actual files on S3 or compatible services like Minio. File metadata is tracked in the database via Hasura, enabling permissions management through Hasura's system, which allows for detailed control over file access based on application data or file metadata. Over its development, Hasura Storage has evolved through three iterations, initially combining with authentication services in Hasura Backend Plus, then being separated for better scalability and performance, and finally being rewritten in Go for efficiency. Users hosting Hasura Storage with Nhost also benefit from an integrated CDN to enhance storage operations.