About cpcp

cpcp moves a file or a piece of text from one device to another. No account, no chat history, and everything expires after one hour; storage is cleared within 10 minutes after that.

Why cpcp exists

Sending one file should not require an account. Installing an app, adding a contact, creating a group, and leaving the file in a chat history for years has nothing to do with getting a file across.

cpcp keeps it to three steps: pick a file, seal it into a pickup code, and enter that code on the other device.

Four principles

  • No account: sending and picking up both happen in a browser.
  • One code: a 6-digit pickup code is the whole credential, with no contact list and no inbox.
  • One hour: files and their code expire after an hour and can no longer be picked up; storage is cleared within 10 minutes after that.
  • Honest privacy: it is not end-to-end encrypted, and we do not call it encrypted transfer.

How it is built

cpcp runs at the Cloudflare edge: a Worker handles routing and HTML, D1 records parcels, R2 stores files, and a scheduled job removes expired content.

The frontend has no build step. Pages are rendered on the server as plain HTML, with no bundler and no client framework.

Who is behind it

cpcp is an independent project, not a product line inside a large company. Features are chosen for being useful and explainable: nothing extra, and no claims we cannot keep.

Questions or feedback? Contact us