Skip to content

Main Features ​

Bonita is built around organizing a library and syncing a media server. This page matches the actual UI.

Organize and ingest ​

Transfer tasks ​

Under Task configs, create one task per library: source folder, output folder, content type (movie / series), and operation.

  • Hard link (recommended) — no extra disk use when source and output share a filesystem
  • Soft link / move / copy — use when the layout needs it

You can run a whole task or a subdirectory. Auto watch runs the task when the source folder changes. After a full run it can also ask Emby to scan the library.

Transfer records ​

Records lists source path, destination, status, and ID number. You can:

  • Ignore an item so it is not transferred again
  • Set season/episode and the top-level folder
  • Override scrape ID, site, URL, poster crop, part number, and tags
  • Delete a record (destination files by default; force-delete also removes the source)

Scraping and metadata ​

Scraping is triggered by a task and uses sites supported by scrapinglib.

  • Custom naming, folder rules, watermarks, extra fanart
  • Save metadata stores results on the Metadata page for reuse
  • Manual edit, JSON import, and import from a folder of NFO files
  • Required fields: number, actor, title, cover. Uploading a cover only updates the linked image; the original cover value stays

Watch history and media items ​

Media items shows movies, episodes, and videos synced from Emby (or created locally). Filter by type, watched, favorite, and whether an ID number exists.

  • Pulling from Emby fills in watched/favorite and does not clear values already stored in Bonita
  • Use Force update in Tools when you want an overwrite
  • Pushing to Emby writes Bonita watched/favorite back (movies, episodes, ID-based videos)

See Media servers for the full flow.

Emby ​

In Service settings, set the Emby URL, username, and API key. Then you get:

  • Webhook — playback finished, mark played/unplayed, favorite, new media
  • Scheduled full sync — about every 15 minutes by default
  • Manual sync — from Tools
  • Collections — edit members in Bonita, push to Emby
  • Library scan — after an auto-watched transfer run

Jellyfin has a connection form; watch history and collections currently target Emby.

Collections ​

On Collections, search Emby box sets and add the ones you want to sync.

  • Pull from server: add members only; nothing is deleted in Bonita
  • Add or remove members in Bonita
  • Push to server: Emby then matches that member list

Removing a member from a collection does not delete the media item.

Tools and Transmission ​

Tools includes NFO import, Emby watch sync, bulk path-prefix rewrite for transfer records, and cleanup of stale records plus torrents older than 7 days.

With Transmission configured, deleting a source file can also remove the matching torrent. Map Transmission’s internal download path to the path Bonita sees.

Next steps ​

Released under the MIT License