User guide / Installing Fiction Reader

Getting started

Installing it

There are three builds, and they all run the same app. Pick the one that matches where you want your library to live.

All guide pages

Which one do I want?

If you want to…InstallNotes
Read on one computer and nothing elseDesktop appIt's self-contained, so there's nothing else to set up.
Read on a computer and a phone, and keep them in stepDesktop app and Android appConnect them through Google Drive or a synced folder.
Share one library across several devices or peopleServerThen use any browser, or point the desktop and Android apps at it.
Only read your own ebooks on a phoneAndroid appIt can keep its own library and doesn't need a server.
You aren't locked in. The desktop app can switch to a server later without deleting its own library, and the Android app keeps both setups side by side.

Desktop app

The desktop app comes with its own database and starts it for you. You don't need to install anything alongside it.

  1. Download it. Go to the project's releases page and get the file for your system. Windows has an installer (.exe) and a zip you can unpack anywhere. Linux has an .AppImage.
  2. Run it. Windows shows a blue "Windows protected your PC" panel, because the installer isn't signed with a paid certificate. Choose More info, then Run anyway. On Linux, make the AppImage executable and open it.
  3. Choose a folder. The first time it starts, the app asks where to keep your library. See Setting up.

It takes roughly 350 to 400 MB once installed. Most of that is the browser engine the window is drawn with and the database that holds the library.

Each release also lists SHA-256 checksums for its files. Nothing is signed, so the checksum is how you confirm a download is the one that was published.

Portable mode

Put a file named portable.txt next to the executable and the app keeps everything in folders beside it: library, settings and logs. You can then run it from a USB stick without leaving anything on the computer. On Windows, keep the path under 100 characters or the app will refuse it.

Android app

The Android app is an APK on the releases page. It isn't on Google Play.

  1. Download fiction-reader-<version>-android.apk from the releases page, on the phone itself.
  2. Allow the install. Android asks whether your browser or file manager may install apps. Allow it, install, and take the permission away again afterwards if you like.
  3. Choose what the app is for when it first opens: connect to a Fiction Reader server, or keep a library on the phone. The Android app explains both.
Connecting to a server needs one setting on the server. The server has to list https://localhost in FR_CORS_ORIGINS. Without it the app says it can't reach the server, even when the network is fine. See Running a server.

Home server

A server makes sense for a household with several devices, or if you have a machine that's always on and can keep checking for new chapters. It needs Docker and about 4 GB of memory.

cd deploy/docker
cp .env.example .env
openssl rand -base64 32      # paste the result into FR_ENCRYPTION_KEY
docker compose up -d

Then open http://<that-machine>:8080 in any browser on your network. Running a server has the full procedure, the settings, backups and upgrades.

Don't forward the port through your router. Fiction Reader has no passwords and expects a network you trust. To reach it from outside your home, use a VPN.

In a browser

Any browser on the same network as the server can use Fiction Reader at the server's address. There's nothing to install.

Chrome and Edge also offer Install app, which gives Fiction Reader its own window and icon with no address bar. That works well on a tablet. The installed window follows the theme you choose in the app, title bar included.

A browser tab can't save stories for offline reading. Only the desktop and Android apps can. See Reading offline.

Browser extension

There's an optional extension for Chrome and Edge. It subscribes to the story in the tab you're looking at, so you don't have to open Fiction Reader and paste the address. It shows the same subscribe form as the app.

  1. Get it. The extension is in the extension/dist folder of the source repository, as a zip. Unpack it into a folder you plan to keep. The browser loads it from that folder every time it starts, so deleting the folder removes the extension.
  2. Load it. Open chrome://extensions (or edge://extensions), turn on Developer mode, choose Load unpacked and select the folder.
  3. Point it at your library. Right-click the extension and choose Options. Enter your server address, your profile name, and the instance token if your server uses one.

The first time you save its settings, the browser asks you to approve access to your server's address. The extension doesn't ask for access to every site you visit.

Updates

  • Desktop. Download the new version from the releases page and install it over the old one. Your library is kept. The app doesn't update itself.
  • Android. Install the newer APK over the top.
  • Server. Pull or rebuild the image and run docker compose up -d. Database changes are applied automatically when it starts.

If you use the desktop or Android app with a server, update the server first. The apps load the interface from the server, so they pick up the new version the next time they're opened.