Uploads
File upload handling with content processing and resource management
Apache-2.0 4.0k downloads
Updated 1 month ago Repository
uploadsfilescontentstorageprocessing
Run
wippy run userspace/uploadsuserspace/uploads
File upload handling with content processing and resource management for Wippy applications.
Features
- File upload processing pipeline
- Content extraction and storage
- Resource registry integration
- Upload type detection and validation
- Migrations for upload tables
Installation
# In your deps/_index.yaml
- name: dependency.uploads
kind: ns.dependency
component: userspace/uploads
version: ">=0.4.0"
Usage
Upload Library
local upload_lib = require("userspace.uploads:upload_lib")
-- Process file upload
local upload_id, err = upload_lib.process_upload(file_data, {
filename = "document.pdf",
content_type = "application/pdf"
})
-- Get upload info
local info = upload_lib.get_info(upload_id)
Content Repository
local content_repo = require("userspace.uploads:content_repo")
-- Store extracted content
content_repo.store(upload_id, content, content_type)
-- Retrieve content
local content = content_repo.get(upload_id)
Upload Repository
local upload_repo = require("userspace.uploads:upload_repo")
-- Create upload record
local id = upload_repo.create({
filename = "file.pdf",
size = 1024,
content_type = "application/pdf"
})
-- List uploads
local uploads = upload_repo.list(options)
Processing Pipeline
local pipeline = require("userspace.uploads:pipeline")
-- Run content extraction pipeline
pipeline.run(upload_id)
Contract Bindings
Provides content_provider and resource_registry contract implementations:
get_content- Retrieve upload contentget_info- Get upload metadatacount_resources- Count available uploadslist_resources- List uploads with pagination
License
Apache-2.0