explaingit

shoubhiksaha/notion-multipart-uploader

Analysis updated 2026-05-18

14TypeScriptAudience · developerComplexity · 1/5LicenseSetup · easy

TLDR

A zero-dependency Node.js helper that automates chunked, retryable file uploads to Notion for files up to 5GB.

Mindmap

mindmap
  root((notion-multipart-uploader))
    What it does
      Chunked file uploads
      Automatic retries
      Notion API helper
    Tech stack
      TypeScript
      Node.js
    Use cases
      Large file uploads
      Attach files to pages
      Small file uploads
    Audience
      Developers
      Notion integrators

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Upload large audio, video, or PDF files to a Notion page without manually chunking them.

USE CASE 2

Attach a file to a Notion database entry created through the Notion SDK.

USE CASE 3

Add automatic retry and timeout handling to file uploads in a Notion integration.

USE CASE 4

Use the lightweight legacy version when only uploading small files under 20MB.

What is it built with?

TypeScriptNode.js

How does it compare?

shoubhiksaha/notion-multipart-uploader0xbebis/hyperpayalfredxw/nova
Stars141414
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyeasyhardmoderate
Complexity1/55/53/5
Audiencedeveloperdeveloperwriter

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires a Notion API key and an existing Notion integration set up.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

This is a small Node.js package that makes it easier to upload files to Notion using its API. Notion's upload process for larger files normally requires you to manually split the file into pieces, send each piece, then tell Notion you are done, and this package handles all of those steps for you so you just call one function with your file. It can handle files up to 5GB on paid Notion workspaces by splitting them into chunks and uploading up to three chunks at the same time by default, which speeds things up for bigger files. If a chunk fails to upload because of a network problem, it automatically retries with increasing delays between attempts, but it will not keep retrying if Notion returns an error caused by something like exceeding a billing limit, since retrying that kind of error would never succeed anyway. You can also set a timeout so a stuck upload gets cancelled instead of hanging forever, and cancel an upload yourself using a standard AbortSignal. The package has no external dependencies. It only uses the built in fetch and FormData features already available in modern Node.js, which keeps it lightweight. It works with any kind of file, including audio, video, images, and PDFs. Once a file finishes uploading, you get back a file ID that you can attach to a Notion page or block using the regular Notion SDK. For people who only need to upload very small files under 20MB, an older, simpler version of the package without the chunking and concurrency logic is still available to install separately. The package is released under the MIT license.

Copy-paste prompts

Prompt 1
Show me how to upload a large audio file to Notion using notion-multipart-uploader.
Prompt 2
Help me attach the uploaded file ID to a new Notion page with the Notion SDK.
Prompt 3
Explain how the retry and timeout options work in this uploader.
Prompt 4
What changes if I only need to upload small files under 20MB?

Frequently asked questions

What is notion-multipart-uploader?

A zero-dependency Node.js helper that automates chunked, retryable file uploads to Notion for files up to 5GB.

What language is notion-multipart-uploader written in?

Mainly TypeScript. The stack also includes TypeScript, Node.js.

What license does notion-multipart-uploader use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is notion-multipart-uploader to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is notion-multipart-uploader for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.