tubearchivist/backend
Craig Alexander aefd678dca
Add test notification button (#996)
* Add api to test notifications before you save

* Add button to UI

* Inspect apprise logs to get errors

* Better formatting around errors coming back from the test notification endpoint

* Use apprise's built in log capture

* Instruct the user to get error from container log instead of intercepting and parsing apprise logs

* refac move to test method on notification class

---------

Co-authored-by: Simon <simobilleter@gmail.com>
2025-07-11 17:30:50 +07:00
..
appsettings implement bulk add subscriptions in appsettings 2025-07-11 16:45:00 +07:00
channel implement bulk add subscriptions in appsettings 2025-07-11 16:45:00 +07:00
common implement bulk add subscriptions in appsettings 2025-07-11 16:45:00 +07:00
config Add test notification button (#996) 2025-07-11 17:30:50 +07:00
download implement bulk add subscriptions in appsettings 2025-07-11 16:45:00 +07:00
playlist implement bulk add subscriptions in appsettings 2025-07-11 16:45:00 +07:00
stats fix WatchStatsSerializer null value 2025-02-14 15:40:50 +07:00
task Add test notification button (#996) 2025-07-11 17:30:50 +07:00
user Add video details view (#956) 2025-06-05 10:19:16 +07:00
video reject progress below thresh, handle progress clean up from bulk update, #1009 2025-07-10 18:43:16 +07:00
README.md add django app overview readme 2024-08-10 16:12:06 +02:00
manage.py renamed django app folder to backend 2024-08-03 21:58:22 +02:00
requirements-dev.txt bump requirements 2025-07-01 11:06:49 +07:00
requirements.txt bump requirements 2025-07-01 11:06:49 +07:00

README.md

Django Setup

Apps

The backend is split up into the following apps.

config

Root Django App. Doesn't define any views.

  • Has main settings.py
  • Has main urls.py responsible for routing to other apps

common

Functionality shared between apps.

Defines views on the root /api/* path. Has base views to inherit from.

  • Connections to ES and Redis
  • Searching
  • URL parser
  • Collection of helper functions

appsettings

Responsible for functionality from the settings pages.

Defines views at /api/appsettings/*.

  • Index setup
  • Reindexing
  • Snapshots
  • Filesystem Scan
  • Manual import

channel

Responsible for Channel Indexing functionality.

Defines views at /api/channel/* path.

download

Implements download functionality with yt-dlp.

Defines views at /api/download/*.

  • Download videos
  • Queue management
  • Thumbnails
  • Subscriptions

playlist

Implements playlist functionality.

Defines views at /api/playlist/*.

  • Index Playlists
  • Manual Playlists

stats

Builds aggregations views for the statistics dashboard.

Defines views at /api/stats/*.

task

Defines tasks for Celery.

Defines views at /api/task/*.

  • Has main tasks.py with all shared_task definitions
  • Has CustomPeriodicTask model
  • Implements apprise notifications links
  • Implements schedule functionality

user

Implements user and auth functionality.

Defines views at /api/config/*.

  • Defines custom Account model

video

Index functionality for videos.

Defines views at /api/video/*.

  • Index videos
  • Index comments
  • Index/download subtitles
  • Media stream parsing