Requirements
The machine, memory and ports a Nifty server needs.
Give Nifty a Linux machine with at least 2 GB of memory.
System
- Linux on x86_64 or arm64, with systemd, for
install.sh. Nifty is one program with no other dependencies. curl,tar,systemctl,journalctl,useraddandrunuser, which most distributions have.- Optional:
minisign, soinstall.shchecks the release's signature;sqlite3, for Backups. - On a Mac, use the Mac app, on Apple silicon with macOS 14 or later (Install on a Mac).
Memory
Nifty uses about 25 MB at rest. Making a document's thumbnail takes more while it works, one at a time, then gives it back:
| When | Peak |
|---|---|
| The first thumbnail after an install or update, while the renderer is prepared | About 300 MB |
| Every thumbnail after that | About 50–90 MB |
| A huge or broken PDF | About 300 MB (the renderer is capped at 256 MB) |
2 GB leaves plenty of room for that and for the system.
Disk
Your notes take little room. Documents and images take what they weigh (PDFs up to 50 MB each, images up to 20 MB), plus up to five copies of the database from updates (Backups) and about 20 MB for the compiled PDF renderer.
Ports
| Port | When |
|---|---|
127.0.0.1:4000 |
Always, by default: only this machine reaches it |
| 443 | Nifty serves HTTPS itself |
| 80 | The same, to redirect http:// and for Let's Encrypt |
Tailscale and a proxy need no ports opened for Nifty.
Nifty connects out to:
releases.niftyware.io, once a day, for updates.- Let's Encrypt and Cloudflare's API, if you use them for HTTPS.
- Your calendar feeds and AI providers, if you add them.