Now in Beta

Named after the problem.
Built to end it. No subscription.

Your files belong on hardware you own — not on someone else's computer. Ugh! Storage replaces overpriced cloud subscriptions with open-source software that runs on your hardware. Privacy isn't a feature. It's the foundation. Privacy is absolute. No company gets to choose who deserves it. Privacy is not now, not tomorrow, not ever, for sale. Privacy is not negotiable.

$0 /year to run
0 min setup
0 third parties
Ugh! Storage app — light mode Ugh! Storage app — dark mode
LPDDR4 Raspberry Pi 5 NVMe SSD
Raspberry Pi 5
Encrypted Tunnel
End-to-End Encrypted
Zero Open Ports
No Monthly Fees
Expandable Storage
Auto Photo Backup
Open Source Server
End-to-End Encrypted
Zero Open Ports
No Monthly Fees
Expandable Storage
Auto Photo Backup
Open Source Server

Everything you need.
Nothing you don't.

All the features of premium cloud storage, running on hardware you own.

True Privacy

Your files live on an SSD in your home. Not on Apple's servers, not on Google's, not in some data center. No one can scan, index, or train AI on your personal photos and documents.

Access Anywhere

Cloudflare Tunnel gives you secure remote access from anywhere in the world. Coffee shop, airport, another country — your files are always there.

Zero Open Ports

The Pi connects outbound to Cloudflare — nothing is exposed on your home network. No port forwarding, no attack surface.

Auto Photo Backup

Enable in Settings and every new photo automatically uploads to your Pi. Your Camera Roll, backed up to hardware you own.

Upload Anything

Photos, videos, PDFs, documents, music, archives — up to 5GB per file with no restrictions on file types.

Search & Organize

Global search across all files and folders. Filter by type, mark favorites, create folders — find anything instantly.

Share Links

Generate secure, expiring share links for any file. Recipients download directly — no account needed.

Expandable Storage

Start with 256GB, grow to 4TB. Swap the NVMe SSD whenever you need more space — no plan upgrades, no monthly fees.

Designed to feel premium

Not your typical utility app. Ugh! Storage is crafted with custom animations, haptic feedback, and a design system built from scratch.

File Browser

Grid and list views with real-time thumbnails, folder navigation, and smart surface cards.

Learn more

Photo Timeline

Photos organized by date with pinch-to-zoom grid, just like your native Photos app.

Learn more

Favorites

Star any file for quick access. A dedicated favorites section keeps your important files one tap away.

Learn more

Global Search

Search across all files and folders instantly. Filter by type: images, videos, documents, audio.

Learn more

Biometric Lock

Face ID and Touch ID protection. Your storage is locked even if someone has your phone.

Learn more

Trash & Restore

Deleted files go to trash first. Restore with one tap, or permanently delete when you're sure.

Learn more

Device Monitor

CPU temperature, memory usage, storage stats, WiFi status, uptime — all visible in the app.

Learn more

BLE Setup Wizard

Animated step-by-step device setup over Bluetooth. Find Pi, connect WiFi, register — all from the app.

Learn more

Save hundreds. Own everything.

See how Ugh! Storage compares to cloud storage you're probably already paying for.

5 years
iCloud 2TB $600
Google One 2TB $500
Ugh! Storage 1TB $230
You save $370
iCloud 2TB
Google One 2TB
Ugh! Storage 1TB
Year 1
$120
$100
~$130 (hardware)
Year 2
$240
$200
~$25
Year 3
$360
$300
~$25
After 5 years
$600
$500
~$190
Who sees files?
Apple
Google
Nobody
Expandable?
No
No
Yes
Can raise prices?
Yes
Yes
No

How it actually works

No magic. No black boxes. Here's exactly what happens when you use Ugh! Storage.

Everyday Usage

When you open the app and browse your files, this is the path your data takes:

Your iPhone Anywhere in the world
HTTPS / TLS
ughstorage.com Cloudflare Network
Encrypted Tunnel
Your Pi At home, on your network
Your files never leave your hardware
No ports opened on your router
Cloudflare just passes traffic through

First-Time Setup

The Pi starts with no WiFi. The app handles everything over Bluetooth:

1

Discover

App finds your Pi over Bluetooth. No network needed.

2

Connect WiFi

Pick your network, enter the password. Pi connects.

3

Register

Pi registers with your account. Tunnel auto-provisions.

4

Done!

Your personal cloud is live. Start uploading.

Want to see how every layer fits together — from Bluetooth provisioning to JWT authentication to Cloudflare tunnels?

Deep Dive: Full Architecture

Two ways to get started

Most Popular

DIY Build

~$120 one-time

Buy the parts, follow our guide, build it yourself. Full control, full satisfaction.

  • Buy hardware from any retailer
  • 30-minute setup with our step-by-step guide
  • Download the free Ugh! Storage app
  • Choose your own SSD size (256GB - 4TB)
  • Open source server code
Start Building
Zero Effort

Pre-Built Device

Coming Soon

We build it, test it, and ship it to your door. Just plug in, download the app, and go.

  • Pre-assembled and tested
  • Software pre-installed
  • Plug in + download app = done
  • Premium case with cooling
  • Priority support

Build it yourself in 30 minutes

Everything you need: a parts list, step-by-step instructions, and automated setup scripts.

Shopping List

Everything you need to build your personal cloud. Click any item for full details and to buy directly from the official Raspberry Pi store.

Raspberry Pi 5

Required
$60–80
Raspberry Pi 5

The brain of your personal cloud. A quad-core ARM computer with 2–3x the speed of its predecessor, built on Raspberry Pi's own silicon.

  • Broadcom BCM2712 quad-core Cortex-A76 @ 2.4GHz
  • 4GB or 8GB LPDDR4X RAM (we recommend 4GB)
  • Dual-band Wi-Fi 5, Bluetooth 5.0, Gigabit Ethernet
  • 2x USB 3.0, 2x USB 2.0, PCIe 2.0 x1
  • USB-C power with power button
View on raspberrypi.com

NVMe SSD

Required
$30–110
NVMe SSD

Your actual storage drive. A high-performance PCIe Gen 3 NVMe SSD designed specifically for the Pi 5. Choose your capacity based on how much you need to store.

  • 256GB, 512GB, or 1TB capacities
  • M.2 2230 form factor, PCIe Gen 3, NVMe 1.4
  • Up to 90k read / 90k write IOPS (1TB)
  • Production guaranteed through January 2032
512GB is the sweet spot for most users. 1TB if you have a large photo library.

M.2 HAT+

Required
~$12
Raspberry Pi M.2 HAT+

The adapter board that connects your NVMe SSD to the Pi 5's PCIe interface. Mounts directly on top of the Pi with included spacers and screws.

  • Single-lane PCIe 2.0 (up to 500 MB/s)
  • Supports M.2 2230 and 2242 form factors
  • Delivers up to 3A to connected drives
  • Power and activity LEDs
Skip this if you buy the SSD Kit above — it's included in the bundle.
View on raspberrypi.com

27W USB-C Power Supply

Required
~$12
27W USB-C Power Supply

The official Raspberry Pi 5 power supply. Delivers enough power for the Pi, the NVMe SSD, and any connected peripherals without throttling.

  • 5.1V / 5A output (25.5W), plus PD profiles up to 27W
  • 100–240V universal input, 1.2m cable
  • 89% average active efficiency
  • Available in white or black, multiple plug types
Don't use a random USB-C charger — the Pi 5 needs 5A to avoid throttling under load with an SSD attached.
View on raspberrypi.com

MicroSD Card

Required
~$8–15
MicroSD Card

The boot drive for your Pi's operating system. Your files are stored on the NVMe SSD — this just runs the OS. Any reputable brand works, but the official Pi cards are optimized for Pi hardware.

  • 32GB, 64GB, or 128GB
  • C10, U3, V30, A2 speed class
  • Up to 5,000 read IOPS on Pi 5 (SDR104)
  • Shock-proof, X-ray-proof, magnet-proof
32GB is plenty. The OS only needs a few GB — all your files go on the NVMe SSD.
View on raspberrypi.com

Setup Steps

1

Flash Raspberry Pi OS

Download Raspberry Pi Imager, flash "Pi OS Lite 64-bit" to your MicroSD, enable SSH, set a password.

2

Mount the NVMe SSD

SSH into the Pi, partition and format the drive, mount it at /mnt/nvme.

3

Install Ugh! Storage

Clone the repo and run two scripts. Everything installs automatically.

Terminal
$ git clone https://github.com/hneogy/ughstorage.git
$ cd ughstorage/server
$ chmod +x setup.sh ble_setup_service.sh
$ ./setup.sh
$ sudo bash ble_setup_service.sh
$ sudo systemctl start ughstorage
4

Download the App & Connect

Download Ugh! Storage from the App Store, create an account, and follow the in-app setup wizard. Bluetooth does the rest.

Common questions

You need to be comfortable plugging hardware together and copy-pasting commands into a terminal. We give you every command — you don't need to know how to code or understand networking. The setup takes about 30 minutes.

Your files physically exist on hardware in your home — not on Apple's or Google's servers. No corporation can scan them, no government can subpoena them from a third party, and no data breach at a cloud company can expose them. The connection uses the same TLS encryption as banking websites.

Your files are still safe on the NVMe SSD. You can access them locally on the same WiFi. When internet returns, the Cloudflare Tunnel reconnects automatically — usually within seconds. No manual intervention needed.

Yes. The Cloudflare Tunnel works from anywhere in the world — cellular, WiFi, hotel network, coffee shop. As long as your phone has internet, you can access your Pi.

Open the app near your Pi and reconfigure WiFi over Bluetooth. The tunnel reconnects automatically. No SSH, no terminal, no technical knowledge needed. Takes about 30 seconds.

Yes. Power down, swap the NVMe SSD for a bigger one, format, and you're back in business. No subscription tier to change, no account upgrade — just swap hardware.

Your Pi keeps working for local access and your files remain on your hardware. The server code is open source on GitHub. You'd only need to set up your own Cloudflare Tunnel for remote access (free, ~10 minutes).

Not yet — the app is iOS-only for now. Android support is planned for the future.

More questions? See the full FAQ on GitHub.

Ready to own your data?

Stop renting storage from corporations. Build your personal cloud in 30 minutes.