readme.md (2147B)
1 # Tagliatelle 2 3 >Previously called *[taggart](https://en.wikipedia.org/wiki/Taggart)*, renamed for unfortunate rhyming reasons 4 5 A simple golang application to provide a flexible SQLite tagging database and file browser via web browser. 6 7 Very rough around the edges, but functional. Primarily intended for personal use. 8 9 ## Running 10 11 ``` 12 cd tagliatelle 13 go get github.com/mattn/go-sqlite3 14 go run . -d your_directory -p 8080 15 ``` 16 17 Then access the server via a web browser, the default port is 8080. 18 19 ### Dependencies 20 * `ffprobe` and `ffmpeg` for converting incompatible video uploads 21 * `sed` for custom bulk note manipulation 22 * `yt-dlp` for video downloader 23 24 ## Features 25 * Multiple tags per category 26 * Bulk tag management via `file-id` or `tag:value` query 27 * Search through file names, descriptions or tag values with wildcard support 28 * Image, video, text and cbz gallery viewers 29 * Will transcode incompatible video formats 30 * Tag value aliases, e.g. `color:blue` and `color:navy` 31 * Regenerate video thumbnails via web interface 32 * Add files via local upload, remote upload or `yt-dlp` directly 33 * Clickable [rotate90](## "Rotates video/image contents by angle on click"), [l45](## "Jumps to line number in text viewer on click"), [01:23](## "Jumps video playback to specified timestamp on click") and [file/1234](## "Clickable link to that file ID") shortcodes in file descriptions 34 * Artbitrary searchable descriptions on files 35 * Raw file URI copying for external application access 36 * In browser file management (delete, rename) 37 * Self-organising, categorised notes, with optional `sed` operation rules 38 * Orphan and reverse orphan finding 39 * Database backup and vacuum support 40 * `tag=!`, `tag=!123` and `tag=x,value=!` for duplicating previously applied tags 41 * Chainable `/and/tag/tag2/value2` filter matching 42 43 ## Limitations 44 * SQLite requires cgo, which requires gcc. Build/run with `CGO_ENABLED=1` 45 * Database deletions get reserved so you won't have sequential file ID's 46 47 ## Credits 48 * [mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) for the go SQLite3 library 49 * [Fluent UI System Icons](https://icones.js.org/collection/fluent) for SVG icons used