Skip to content

Releases

v2026.6.0

Choose a tag to compare

@wilkinsantana wilkinsantana released this 09 Nov 09:31

Released 2026-11-09. It brings podcast feeds, read aloud, the Shelf view, whole-series downloads and pages that use the whole window.

What you can do

  • Pages use the whole window. The book page, Search, Downloads, the Libraries page and other lists, your listening pages and Up next no longer sit in a narrow strip with empty space around them. On a wide screen they fill the window and show more columns; reading text stays a comfortable width, and forms stay narrow. Phones look the same.

  • Download a whole series or shelf in one tap. The series page and each shelf now have a "Download all" button, in the browser and in the
    app. It asks first ("Download 12 books? About 34 GB."), skips books you already have, says if they will not fit, shows "Downloading 3 of 12"
    with a Stop button, and tells you at the end how many did not download. It saves the audio; a book's text stays with its own Download.

  • See your library as a shelf. The Library has a third view, Shelf, where each book stands on a plank as thick as it is long, with your place marked on it. Home's shelf now runs to the edge of the window and scrolls sideways. Home shows the same spines. Your choice of Grid, List or Shelf is remembered.

  • Find your account and settings at once. Profile now opens with two buttons, Account and Settings, each with a short menu of
    everything inside. On a computer your picture and name stay at the bottom of the side menu.

  • Listen in a podcast app. A book or a series with audio now has a "Podcast feed" button, for people who may download it. It makes a
    private address you paste into AntennaPod, Pocket Casts, Apple Podcasts or Overcast; the app then plays the original audio, chapters
    included. The address is shown once, with a QR code, and each address is listed on Your devices with the book or series it carries
    and when an app last used it, where you can turn it off. Removing someone's right to download, disabling them or a password reset
    stops their feeds too.

  • Have a book read aloud. In the reader, "Read aloud" speaks the book with a voice already on your computer or phone,
    sentence by sentence, and marks the sentence being read. Play, Pause, Back one sentence and Forward one sentence sit in the
    reader's bottom bar; "Voice and speed" picks the voice and a speed from 0.8× to 2×. If you scroll away, "Back to the voice"
    takes you back. It keeps going into the next chapter and stops at the end of the book. The text never leaves your device, and
    only voices that run on the device are offered. In the Android app it uses the phone's own voices.

  • Skip silence in the Android app. Settings, Playback has "Skip silence", which shortens long pauses while you listen. Your place
    and chapters stay where they were; the time it counts as listened is the time you actually spent. It works in the app only.

  • Turn pages with the volume buttons in the Android app. In the reader's settings, under More, "Turn pages with the volume buttons"
    makes volume down the next page and volume up the previous one, also while a book plays. Everywhere else the buttons change the volume.

  • The screen stays on while you read in the Android app, when the reader's keep-awake setting is on. As in the browser, it lets the screen sleep again after
    10 minutes without a touch, and when you leave the reader.

  • Name your devices. On Your devices, each browser sign-in and each phone or desktop app has a "Name" button, so you can tell
    "Kitchen laptop" from "Work PC". An empty name on a browser goes back to the usual label; an app always keeps a name. People who
    manage accounts see the same names on the Devices tab. "Add a phone" now sits inside the devices card instead of running into it.

  • Listen up to 3.5 times as fast. The speed sheet's fine slider and the usual speed in Settings now go up to 3.5×.

Upgrading

This version uses database schema 38 (it was 35 in 2026.5.0).

v2026.5.0

Choose a tag to compare

@wilkinsantana wilkinsantana released this 08 Nov 10:05

Released 2026-11-08. It brings Contributors, sign-in links for people without a password, and waveforms for very long books.

What you can do

  • Invite someone as a Contributor. Next to Listener, Member and Admin there is now Contributor: a person who listens like a
    member and can also add books. Their books go into a folder of their own inside the upload folder, and they can fix the details,
    look up the book online, change the cover and remove the books they added, never anyone else's. They add books only to a whole
    library (or the whole server) that was shared with them and where uploads are on. You can make a member a Contributor, or the
    other way round, on the person's page.
  • See who added a book. Owners and admins get an "Added by" choice in the Library's Filter menu and a line on the book's page;
    a Contributor sees "You" and "Added by you" for their own books. Nobody else is told who added a book.
  • Remove all the books a person added. On a person's page, "Books they added" shows how many there are, a link to see them in
    the Library and "Remove all their books". Tendshelf asks first, deletes only the files it placed for that person that nobody has
    changed, and tells you which books stayed and why.
  • Get someone back in with a sign-in link. On a person's page, an admin can make a sign-in link that works once, for
    24 hours. It is for someone who never chose a password or forgot it: they open the link, confirm, and pick a new password
    within the hour. Making a new link ends the old one; the owner's account has no links. The sign-in page now says
    "No password yet, or forgot it? Ask whoever runs this server for a sign-in link." A person's page shows their username.

Fixed

  • Books longer than 48 hours get a waveform. The player bar showed none for them; it now works for books up to 500 hours.

For people who package Tendshelf

  • The Android app has an F-Droid recipe (android/fdroid/app.tendshelf.android.yml). It builds from the tagged source and
    checks the result against the signed APK on the release page. How to submit it is in docs/android.md.

Upgrading

This release uses database schema 35 (it was 33 in 2026.4.0). Before Tendshelf upgrades an existing database it writes a
verified copy to backups in the data folder, and an older program refuses a database made by this one.

v2026.4.0

Choose a tag to compare

@wilkinsantana wilkinsantana released this 07 Nov 10:45

Released 2026-11-07. It brings the Android app, adding a phone with a QR code, a chapter bar you can point at, and a
full player that slides up and swipes away.

What you can do

  • The full player slides up from the bottom. On a phone or tablet it now rises over a quarter of a second, the way it
    slides down when you close it, instead of fading in. The arrow, Escape and Back slide it down too.

  • Pick a chapter on the chapter bar. Point at the thin chapter line (in the player, the side player, on Home and on a book's
    page) and a small label names the chapter and where it starts; hold a finger on it to see the same. Click or tap to go to
    that chapter (Go back is offered); on Home it starts the book there. Keyboard: arrows choose, Enter goes.

  • Swipe down to minimise the full player. On a phone or tablet, drag down from anywhere on the player that is not a
    button, a slider or a list and it follows your finger and fades; let go past a quarter of the screen, or flick, and it
    closes, otherwise it springs back. The arrow is still there. Playback is not touched.

  • Add a phone with a QR code. Under Your devices, "Add a phone" shows a code that works once for 3 minutes. Point the phone's
    camera at it, open the app, and type the number the phone shows into the page. No password is typed on the phone.
    Invitation links show a QR as well, so someone beside you can join from their phone.
    On an address that only works on this computer (localhost) the page says so instead of drawing a code.

  • A phone already signed in to the app can no longer join an invitation by mistake, which used to leave the page and
    the app signed in as two different people.

  • Book details search Audible first, and other places only when you choose them. A normal search asks only Audible
    (through Audnexus). "Search more places" now has a box for Open Library, one for Apple Books and one for All, and
    Tendshelf remembers your choice. The "Look up" button on Libraries & scanning uses the same choice. Google Books is
    gone: it refused Tendshelf's requests, and Tendshelf will not ask you for an API key. Each place now says what happened in
    plain words, such as "Open Library is busy right now, try again later." or "Could not reach Apple Books.", and one
    place failing never hides what another found.

  • Tendshelf for Android has a release build. make apk makes an APK whose version comes from the release tag, with
    a proper icon. It is signed with your own key when you provide one and left clearly unsigned when you do not. Two builds
    of the same source give the same APK. The steps, including how to make your own key and how to upgrade, are in
    docs/android.md. A phone with a test build needs one uninstall before the first release APK.

Upgrading

This release uses database schema 33 (it was 32 in 2026.3.0). Before Tendshelf upgrades an existing database it writes a
verified copy to backups in the data folder, and an older program refuses a database made by this one.

Tendshelf 2026.3.0

Choose a tag to compare

@wilkinsantana wilkinsantana released this 06 Nov 19:51

Released 2026-11-06. It brings library care, chapter editing, reading apps, a clearer Library, and a desktop app with its own title bar.

What you can do

  • Library filters are easier to use. One Filter menu now lists every kind (Author, Narrator, Series, Category,
    Length, Format) and its choices together, so choosing a value is one step. While you filter, a row under the
    controls shows one chip per filter, each with a cross that removes only that filter, and Clear all next to them
    (it keeps your sort and view). Sort is its own control ("Sort: Recently added"), Show keeps only the listening
    states, and the header reads "15 of 60 books" instead of a separate count. Saved links keep working.

  • Look up the books that need it. On Libraries & scanning, "Look up" now asks which books: those missing details (the
    default), those not looked up yet, or all, each with how many it covers. A book you reviewed and accepted is not asked
    about again. The page is organised by library, with settings that save as you change them. The books that need a look
    moved to Library health, which opens with a count and a link to each group.

  • The desktop window stops at 1,920 px. The pages already stop there, so a wider window on an ultrawide monitor
    only showed a blank strip. Dragging an edge or corner stops at 1,920 px, and Maximise fits the window to the screen:
    on a wider screen it is 1,920 px wide and as high as the screen, and pressing it again goes back.

  • New books appear by themselves. Tendshelf watches your library folders and scans after nothing has changed
    for 45 seconds, so a book that is still being copied is not read half written. It also scans on a schedule (every
    6 hours unless you choose another time). A network folder is only checked by the schedule.

  • Whole backups. The owner can choose a folder outside the data folder and the libraries. Tendshelf copies the
    database and the cover and ebook files there, checks each copy, and keeps deleted files for 30 days. Restoring is by
    copying; the Backups page lists the steps.

  • Chapter editor. Change the start and title of each chapter, add or delete chapters, move them all by some
    time, or reset to the file's own. Edited chapters survive a rescan.

  • Chapter lookup. Ask an online source for a book's chapter titles and times by ASIN, compare them, and use
    the titles and times or the titles only. Nothing is stored until you save.

  • Duplicates and merge. The owner and admins see books that look like the same audiobook, merge them (places,
    bookmarks, highlights, shelves and shares move to the kept book), or mark them "Not the same". A merged copy can
    be shown again.

  • Library health. One page lists books with missing files, files that cannot be opened, no chapters, no cover,
    no online match or chapters past the end, each with a link to fix it.

  • App keys and OPDS. Make a key on Your devices and add your library to an ebook reader app that speaks OPDS
    (a catalogue of your books, search and downloads).

  • KOReader sync. A second key lets KOReader push and pull your reading place for EPUB and PDF books. The place
    lands near where you were, not on it. It has not yet been tried with a real KOReader.

  • Clips. Give a bookmark an end time to keep a stretch of a book, then press "Play this clip" and it stops at the
    end. Bookmarks can be filtered by kind and are exported with their kind and length.

  • Listening history. "Where was I?" shows your listening sessions by day, with a button to go back to that
    moment.

  • All my highlights. Every highlight and note from every book in one place, with search, colour and book
    filters, and downloads as Markdown or JSON.

  • Desktop app, new look. The window has its own title bar (back, forward, where you are, now playing, minimise,
    maximise, close) on a real window with the system's shadow, corners and resize edge, new icons, and a More menu
    with change mode or server, zoom, Keep playing and About. The tray shows the book that is playing with Pause,
    Skip back and Skip forward, and a notification tells you when a book ends or the sleep timer stops it while the
    window is not in front.

  • Drop a book. Drag audio or ebook files onto the desktop window to open Add books with them already chosen
    (owner or admin, in a library with uploads on). A folder is not accepted; copy-protected files are refused as before.

Known limits

  • Not tried on a real computer yet: sound from the desktop app in a hidden window, media keys, tray and
    notification clicks, a drag from the file manager, the icons on a panel, X11, and a long playback on the build
    without C. See docs/manual-checks.md.
  • KOReader sync has not met a real KOReader.
  • Whole backups are not encrypted, and there is no restore button.
  • Library health only reads; it does not fix.
  • Merged copies leave their folders on disk; there is no merge across libraries.
  • OPDS has no OPDS 2.0, no audio and no per-shelf feeds.

Upgrading

This release uses database schema 32 (it was 24 in 2026.2.0). Before Tendshelf upgrades an existing database it
writes a verified copy to backups in the data folder, and an older program refuses a database made by this one.
Watching is on for every library after the upgrade, and a library with no schedule gets a scan every six hours; both
are read-only on your files and can be changed under Libraries.