feat: replace fs scans with bbolt for fast, persistent metadata management

Signed-off-by: skidoodle <contact@albert.lol>
This commit is contained in:
2026-01-18 20:27:33 +01:00
parent 5a3846266e
commit 954aec6d8e
11 changed files with 289 additions and 30 deletions
+7
View File
@@ -8,6 +8,8 @@ import (
"os"
"strconv"
"time"
"go.etcd.io/bbolt"
)
const (
@@ -31,6 +33,10 @@ const (
TempExpiry = 4 * time.Hour
MinRetention = 24 * time.Hour
MaxRetention = 365 * 24 * time.Hour
DBFileName = "safebin.db"
DBBucketName = "files"
TempDirName = "tmp"
)
type Config struct {
@@ -43,6 +49,7 @@ type App struct {
Conf Config
Tmpl *template.Template
Logger *slog.Logger
DB *bbolt.DB
}
func LoadConfig() Config {