Upload and download files using oRPC with standard File and Blob objects.
Scanned 9/12/2026
Install to Claude Code
npx -y skills add ali-master/skills --skill orpc-file-upload-download --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Orpc File Upload Download?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/ali-master-orpc-file-upload-download)More formats (shields.io, HTML) on the badges page.
---
name: oRPC File Upload/Download
description: Upload and download files using oRPC with standard File and Blob objects.
license: MIT
metadata:
author: Ali Torki
homepage: https://github.com/ali-master
version: "1.0.0"
---
# File Operations in oRPC
oRPC natively supports standard [File](https://developer.mozilla.org/en-US/docs/Web/API/File) and [Blob](https://developer.mozilla.org/en-US/docs/Web/API/Blob) objects. Combine files with arrays and objects for upload/download.
> **File Uploads**: For files >100 MB, use a dedicated upload solution or [extend the body parser](/docs/advanced/extend-body-parser). oRPC does not support chunked/resumable uploads.
>
> **File Downloads**: Use lazy file libraries like [@mjackson/lazy-file](https://www.npmjs.com/package/@mjackson/lazy-file) or [Bun.file](https://bun.com/docs/api/file-io#reading-files-bun-file) to reduce memory usage.
## Example
```ts
import { os } from '@orpc/server'
import * as z from 'zod'
const example = os
.input(z.file())
.output(z.object({ anyFieldName: z.instanceof(File) }))
.handler(async ({ input }) => {
const file = input
console.log(file.name)
return {
anyFieldName: new File(['Hello World'], 'hello.txt', { type: 'text/plain' }),
}
})
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!
Designs system architecture, component specifications, and technical integration strategy. Use when: designing solutions, system architecture, technology stack, or integration approaches.
Generate a comprehensive VC investment assessment report for a company
Compose rich, readable Telegram messages using HTML formatting via direct Telegram API. Use when: (1) Sending any Telegram message beyond a simple one-line reply, (2) Creating structured messages with sections, lists, or status updates, (3) Need formatting unavailable via Clawdbot's Markdown conversion (underline, spoilers, expandable blockquotes, user mentions by ID), (4) Sending alerts, reports, summaries, or notifications to Telegram, (5) Want professional, scannable message formatting wit...
Analyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management (create, add, remove assets), crypto analysis (Top 20 by market cap), and periodic performance reports (daily/weekly/monthly/quarterly/yearly). 8 analysis dimensions for stocks, 3 for crypto. Use for stock analysis, portfolio tracking, earnings reactions, or crypto monitoring.
Find and cancel unwanted subscriptions by analyzing bank transactions. Detects recurring charges, calculates annual waste, and helps you cancel with direct URLs and browser automation. Use when: 'cancel subscriptions', 'audit subscriptions', 'find recurring charges', 'what am I paying for', 'save money', 'subscription cleanup', 'stop wasting money'. Supports CSV import (Apple Card, Chase, Amex, Citi, Bank of America, Capital One, Mint, Copilot) OR Plaid API for automatic transaction pull. Out...