Documentation

Welcome to the official giovium documentation. Here you can find comprehensive guides to installing and configuring your self-hosted giovium server.

Client Setup

giovium is designed to be immediately accessible without complex configuration. Simply download the application for your operating system (iOS, Android, macOS, Windows, Linux) and follow the on-screen instructions.

During your first launch, you will establish a master password to encrypt your local vault. Do not forget it, as it is fully unrecoverable.

Server Connection Settings

Client Features & Capabilities

The giovium client offers an extensive suite of tools for managing your data precisely the way you want:

Importing & Exporting

You can seamlessly import and export your unencrypted vault data in bulk using the standard giovium format. When performing an import or export, you must select the specific .giovium file on your disk. Any file attachments referenced during the import process must be located at a path relative to the selected .giovium file. Please check the format documentation for more details about how to structure your items. Note that items protected by a second password cannot be processed in bulk.

Server Deployment

Quick Start (Docker)

The fastest way to deploy giovium is via Docker, ensuring a clean containerized instance.

docker run -p 8000:8000 xgiovio/giovium-server

Quick Start (Server Binary)

Alternatively, you can directly run the native server executable specifically compiled for your operating system.

./giovium-server -p 8000 -h 0.0.0.0

Configuration Options

Where are my encrypted files stored?

Your encrypted database and file attachments are stored locally depending on your platform:

Client Vault Storage

Server Storage & Persistence

Server data is securely saved in the /data folder next to the executable. To make your server data persistent so it doesn't disappear when a Docker container stops or gets deleted, you must map a Docker Volume to this path. Volumes are managed by Docker and safely store your data outside the container's lifecycle on your host OS.

Reconnection & Device Recovery

Because giovium synchronizes across your hardware, your data remains safe on your other devices (desktop, mobile, or alternative servers) even if your primary server goes down.

App Crashes & Local Backups

If the app ever crashes or if you simply want to manually secure your data, you can directly access your encrypted vault files. On iOS, your data is accessible via the native Files app; you can copy your vault to safely back it up or move it to another device whenever you want. On desktop platforms, your encrypted vault is securely stored in standard application support folders. You always retain full, independent control to manually back up and restore your files without relying on the app itself.

Replacing or Adding a Server

If you need to add an additional server to sync, simply set up the new server, go into the app's settings, and add the new server. You can add a new, empty server or an already synced server. Note that unlike the first sync, when adding a server from settings, you can only add a brand new server or a server that is already synced with the same vault.

Furthermore, if you need to move your server data to another machine, it is completely safe and possible. Simply shut down your existing server, copy the /data folder to the new server, and start the new server using that copied data.

Recovering a Lost Device

If you lose a device and need to set up a brand new client connected to your existing server, you'll go through a strict security handshake:

  1. On the first screen of the new app, enter your server connection details.
  2. Because your server already contains data, the app will display a unique security token.
  3. Access your server manually and create a file named token.txt inside the /data folder. Insert the provided token into this file.
  4. Return to the app, enter your Master Password, and click Import. The app will send the token to the server. Once the server verifies the token, the app will securely download your encrypted vault and use your Master Password to restore access.

Security Rationale: A newly installed app is completely unknown to your server. The token verification acts as a primary defense preventing your server from transmitting your encrypted vault to an unauthorized stranger. Furthermore, even if this token verification were somehow bypassed, your vault and data remain completely inaccessible without your Master Password.

Network & Hosting Options

The server runs on HTTP. It doesn't strictly need to be behind SSL, but if you prefer, you can easily host it behind a reverse proxy like NGINX.

Once paired, all communications are always encrypted and signed internally between the server and clients for maximum security. Even if you host giovium on a public server without any reverse proxy, your data remains completely safe.

Self-Hosting at Home

If you want to self-host giovium at home, you can connect to your server using its local IP address and port. If you need to access it from outside your home network (behind a NAT), simply configure your router to port-forward external traffic to the internal IP and port of your server. If your home IP address is dynamic, you can use a DDNS (Dynamic DNS) service to maintain a persistent address.

Cloud VPS Hosting

Alternatively, you can host it on your own hardware or rent a mini VPS for just 2 to 3 Euros per month. You can then connect directly to the server's public IP address over the internet, or simply map a custom domain name to it.

If you need any information or assistance with your configuration, feel free to contact me using the details provided in the footer below. I will gladly help you get set up!