HUGE refactor. working towards web UI

This commit is contained in:
ari melody 2026-06-08 02:49:39 +01:00
parent dd54e8cc49
commit 1f94eecca9
Signed by: ari
GPG key ID: 60B5F0386E3DDB7E
29 changed files with 1669 additions and 162 deletions

View file

@ -1,8 +1,10 @@
# Vodular
This tool stitches together livestream VOD segments (in `.mkv`format) and automatically uploads them to YouTube, complete with customisable metadata such as titles, descriptions, and tags.
# Melody VOD Manager
This tool stitches together livestream VOD segments (in `.mkv` format) and automatically uploads them to YouTube, complete with customisable metadata such as titles, descriptions, and tags.
I built this to greatly simplify the process of getting my full-quality livestream VODs onto YouTube, and I'm open-sourcing it in the hopes that it helps someone else with their workflow. As such, personal forks are welcome and encouraged!
**WARNING:** This is an experimental web-based version of [Vodular](https://codeberg.org/arimelody/vodular). This documentation has not been updated yet, and will not be updated until this version is stable. Watch this space!
## Quick Jump
- [Basic Usage](#basic-usage)
- [VOD Metadata](#vod-metadata)
@ -11,21 +13,21 @@ I built this to greatly simplify the process of getting my full-quality livestre
## Basic usage
1. Run the tool for the first time to generate a starter configuration file:
```sh
$ vodular
$ melody-vod-manager
New config file created (config.toml). Please edit this file before running again!
```
The directory which holds your configuration file and templates varies,
depending on platform:
- **Linux:** `~/.config/vodular/templates`
- **macOS:** `~/Library/Application Support/vodular/templates`
- **Windows:** `%AppData%/vodular/templates`
- **Linux:** `~/.config/melody-vod-manager/templates`
- **macOS:** `~/Library/Application Support/melody-vod-manager/templates`
- **Windows:** `%AppData%/melody-vod-manager/templates`
2. Edit your configuration file as necessary (You will need to create a [YouTube Data API v3](https://developers.google.com/youtube/v3) service and provide its credentials here).
**IMPORTANT:** `config.toml` contains very sensitive credentials. Do not share this file with anyone.
3. Initialise a VOD directory:
```sh
$ vodular --init /path/to/vod
$ melody-vod-manager --init /path/to/vod
Directory successfully initialised. Be sure to update metadata.toml before uploading!
```
@ -33,10 +35,10 @@ Directory successfully initialised. Be sure to update metadata.toml before uploa
5. Upload a VOD (Optionally, delete the redundant full VOD export afterwards):
```sh
$ vodular --deleteAfter /path/to/vod
$ melody-vod-manager --deleteAfter /path/to/vod
```
**NOTE:** On first run, you will be prompted to sign in to YouTube with the channel you wish to upload to. To sign out, simply run `vodular --logout`.
**NOTE:** On first run, you will be prompted to sign in to YouTube with the channel you wish to upload to. To sign out, simply run `melody-vod-manager --logout`.
## VOD Metadata
When `--init`ialising a directory, a `metadata.toml` file is created. This is a
@ -69,7 +71,7 @@ url = 'https://example.org'
## Templates
There are three template files, `title.txt`, `description.txt`, and `tags.txt`,
which can be created in `/path/to/vodular/templates`. These templates can be
which can be created in `/path/to/melody-vod-manager/templates`. These templates can be
created and tweaked to customise your VOD metadata on upload. They are enhanced
with Go's [template format](https://pkg.go.dev/text/template) to inject
information provided in `metadata.toml`, and other neat functionality!