Cuddy
How it works

Two credentials, and then it just runs.

There is no storage layer to configure and no plan to choose, because the storage is a Telegram channel you already have. This page is the whole mechanism, start to finish.

Setting it up

  1. Step 1

    You make a bot

    BotFather is Telegram's own bot for making bots. Two questions later it hands you a token that looks like 8123456789:AAF…. That token is the whole key to your bot, so it is treated like a password from here on.

    Forty seconds. No developer account, no billing details, no approval queue.

  2. Step 2

    You make a channel

    A private channel works best: only you can see it, and it keeps an unlimited backlog. Add your bot as an administrator so it is allowed to post. Channel IDs start with -100.

    That channel is the disk. Everything lands there as a normal Telegram document you can also open in the app.

  3. Step 3

    You connect the two

    Paste the token and the chat ID into Settings. Before anything is saved, both halves are checked against Telegram - getMe proves the token, getChat proves the bot can reach that channel.

    If either half is wrong you get Telegram's own error back, not a generic failure.

Under the hood

What happens when you drop a file

On the way in
  1. 1

    You drop a file

    In the browser. Images are compressed here first, before anything leaves your machine.

  2. 2

    The server checks it

    Owner, folder, size. Anything over 20 MB is rejected now rather than after a slow upload.

  3. 3

    Your bot posts it

    sendDocument, into your channel, using your decrypted token. It never touches a bucket.

  4. 4

    The row is written

    Name, size, type, folder and the Telegram file id - all from values the server verified.

On the way out
  1. 1

    You click a file

    The browser asks for /api/files/view/<id>.

  2. 2

    The row is looked up

    By Telegram file id and your user id together. Someone else's id reads as 404.

  3. 3

    Telegram is asked

    getFile resolves a path, then the file is fetched with your bot's token.

  4. 4

    It streams through

    Straight to your browser, and marked so that nothing along the way is allowed to keep a copy.

So where does everything actually sit?

Your Telegram channel

Every uploaded file, as an ordinary document message. Open the channel in Telegram and there they are.

Our database

Just the details: file names, sizes, types, your folder tree, your stars, and your scrambled bot password. Never the files themselves.

Your browser

Only what keeps you signed in, plus whether you like grid or list view.

Anywhere else

Nothing at all. We keep no second copy of your files anywhere.

The bot takes about a minute to make.

Cuddy handles the rest - folders, previews, search and locks.