# dEYEy Server setup

Public server installers and source archives are being prepared for launch.
There is no public server download yet. Download links and release-specific
instructions will appear at https://www.deyey.org/#setup when available. This guide
is documentation, not an installer.

## What you need

- A computer with your video folders or access to your network shares.
- An installed dEYEy Server build compatible with that computer.
- FFmpeg and FFprobe, installed separately if your server build requests them.
- A direct connection between your server and viewing devices. For remote access,
  use your own Tailscale account or another VPN and a trusted HTTPS endpoint.

The server does the encoding. Original folders and video stay on your devices.
There is no dEYEy account or video relay. Internet and mobile data limits still
apply to traffic between your own devices.

## An existing desktop installation

1. Open **dEYEy Server** on the computer with your videos.
2. Choose a video folder. If FFmpeg is missing, install FFmpeg and FFprobe and
   enter their folder in the app's FFmpeg setting.
3. Select **Start server**, then **Open dashboard**. The desktop default is
   http://127.0.0.1:8095/#server on the server computer.
4. Select **Show** or **Copy** beside Owner access code and sign in locally.
   Keep that permanent owner code private.
5. Add additional folders in Libraries. On desktop builds, mount network folders
   using Finder, File Explorer, or your system's file manager first.
6. In Devices, create a one-time code for each viewing device. Choose management
   access only for devices you trust to change libraries and grant access.

Keep the desktop app open while watching. Closing it stops its server and
conversions. An existing background-service installation runs separately; use
its installed launcher and its own dashboard address and service instructions.
A website cannot start a stopped or uninstalled server.

## Connecting another device

Open https://www.deyey.org/#connect, then enter the eight-character connection code,
scan its QR code, or open the private pairing link from your server. The server
must be reachable from that device. A short-code directory temporarily holds the
server address and one-time grant, for at most ten minutes; records are removed
when claimed. Your library and video do not pass through the directory. QR codes
and long private links work without a directory.

Remember the device only in a browser you trust. Management access can change
libraries and grant access; viewing access can browse and play your libraries.
Never enter your permanent owner code on a public website.

## Your private HTTPS connection

The desktop default is loopback-only: another computer cannot reach
127.0.0.1 on your server. Configure a private HTTPS route before connecting a
phone, TV, or the hosted website.

Tailscale is one option, supplied and operated independently of dEYEy. Install it
from https://tailscale.com/download on your server and viewing devices. Use your
own account and network. Once connected, Tailscale Serve can route private HTTPS
to the desktop server:

```sh
sudo tailscale serve --bg --https=443 http://127.0.0.1:8095
```

Use the actual local port for your installation. Follow Tailscale's HTTPS prompts,
then enter the private HTTPS address it provides in the server app before
starting. Entering an address alone does not configure the route. Use private
Serve, not public Funnel. Tailscale's plan terms apply.

Other VPNs and HTTPS proxies work when they provide a trusted HTTPS route to
your server. The hosted website requires HTTPS and an allowed frontend origin
of https://www.deyey.org. Older server installations may need their allowed website
origins updated before pairing with the new website. The server's own interface
remains available. A local HTTP connection does not encrypt credentials or video.

## Source installations and updates

When a source release is published, follow the setup instructions included in
that release for supported operating systems, prerequisites, commands, and
checksums. Do not substitute a private working tree or an unverified third-party
archive. A checksum detects corruption; it is not an independent signature or
security audit.

Keep an existing installation's private configuration and state backed up
securely. These can contain owner and device credentials, library registrations,
and saved network-share logins. Do not upload them to GitHub or share them with
other people. Stop active playback before updating and follow release-specific
migration instructions. Do not run a fresh installer over an existing state.

Existing paired devices retain their permissions until revoked or expired.
Browser storage belongs to its website origin, so a browser moving from an older
website to www.deyey.org needs to pair again. Revoking a device also stops its
streams and playback links.

To remove a desktop installation, stop its server, close the app, and use your
operating system's normal application removal process. For a background service,
stop and disable the installed service before removing the application. Preserve
private state if you need to restore it later. Your original video folders are
separate and must not be deleted.

## Current limits

Desktop builds are being validated for Linux, Windows, and macOS on Intel and
Apple Silicon. Native Apple viewing apps are in development and are not claimed
as public downloads. Format and disc support vary with the installed build and
its media readers. CPU performance and your network affect preparation and
buffering. Data estimates are approximate. Keep the server awake and retain
independent backups.
