Skip to content

Releases: denglerchr/MediaHub_OSS

v3.2.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 04:27

What's Changed

Full Changelog: v3.1.0...v3.2.0

v3.1.0

Choose a tag to compare

@denglerchr denglerchr released this 24 Aug 05:24

Full Changelog: v3.0.0...v3.1.0

Features:

  • add Postgres and S3 connectors

Improvements:

  • improved entry upload, enabling multi-file uploads from mobile devices
  • improved touch screen support for selecting files
  • improved preview querying and caching
  • default to 0 days max age for new databases instead of 365 days
  • add Docusaurus docs

Bug fixes:

  • fix storage not being cleaned when deleting full database
  • fix missing timestamp in JSON inserting timestamp far in the past
  • fix time display for timestamp <1970
  • fix export not including media fields
  • multiple minor bug fixes, mainly issues found through LLM analysis

v3.0.0

Choose a tag to compare

@denglerchr denglerchr released this 03 Aug 05:32

Features:

  • allow retrieving entries by created_at or updated_at instead of timestamp
  • add API-Key management with service accounts
  • add can_admin role on database level, to allow standard users to manage database settings

Improvements:

  • remove audit log button if audit logs not available/not stored in DB
  • frontend complete rework:
    • fullscreen entry dashboard, with improved tiling
    • light mode
    • home dashbord showing databases, instead of in the sidebar
    • new page and modals for API key management
    • new page for user settings
    • new icons and logo
  • improve middleware performance

Bug fixes:

  • correctly index custom fields
  • do not show content above header in profile page anymore

Breaking Changes:

  • user id are now ULID instead of simple integers
  • user endpoints to use path parameter instead of query parameter
  • preview generation now clipping aspect ratios for stretched images

v2.1.0

Choose a tag to compare

@denglerchr denglerchr released this 03 Jul 19:58

Bug fixes:

  • fix lookup for expired refresh token

Features:

  • add entry queuing and processing limits, to avoid server resource starvation. New config arguments: server.processing.n_ffmpeg_async and server.processing.n_ffmpeg_total. n_max_queued parameter on database level.
  • allow adding, renaming and deleting custom fields after database creation.
  • add option to not index custom field columns via is_indexed=false.
  • automatically extract timestamp from certain file format in the frontend
  • allow drag and drop of multiple files at once in the frontend
  • modernize entry grid view with tiling
  • adjust preview generation to clip aspect ration, for frontend alignment

v2.0.1

Choose a tag to compare

@denglerchr denglerchr released this 05 Jun 05:35
02d82d2

v2.0.1

Bug Fixes:

  • fix display of wrong timestamp in entry list view

Improvements:

  • add font scaling for small screens
  • add https as possible swagger schema

v2.0.0

Choose a tag to compare

@denglerchr denglerchr released this 10 May 06:08

v2.0.0

Feature cleanup

  • use ULIDs for database identification, allowing to rename the database
  • export previews as well, add import functionality
  • improve frontend for mobile devices
  • add avif image format target

Bug fixes:

  • docker container does not require init_config.toml anymore
  • fix housekeeping timestamp assignment
  • fix sidebar not loading version info

Full Changelog: v1.2.0...v2.0.0

v2.0.0-beta1

Choose a tag to compare

@denglerchr denglerchr released this 21 Apr 05:13

Features:

  • add video file support
  • add fullscreen playback to frontend
  • user roles now on database level

Breaking Changes:

  • all timestamps are now stored with millisecond precision
  • entry and database endpoint paths changed to use path variables
  • files are now stored in folders by id rather than by date
  • database schema changed significantly
  • running the server now requires the serve command
  • configuration file has renamed configs
  • renamed environment variable prefix from FDB_ to MEDIAHUB_

Other:

  • publish multiarch docker build (ARM64, X86)
  • add Windows ARM64 binaries to release

Full Changelog: v1.2.0...v2.0.0-beta1

v1.2.0

Choose a tag to compare

@denglerchr denglerchr released this 05 Jan 06:26
4e4ee0a

Features:

  • make the "large file" threshold configurable.
  • implement database schema versions to enable migrations in the future.
  • implement a "recovery" command, for database consistency checks after, e.g., a server crash
  • implement auditor logging, which has to be enabled explicitly
  • implement bulk delete and bulk download functionalities

Bug fixes:

  • fix swagger documentation not being up to date
  • fix filename and status fields not being whitelisted in the search endpoint

What's Changed

Full Changelog: v1.1.0...v1.2.0

v1.1.0

Choose a tag to compare

@denglerchr denglerchr released this 28 Nov 20:55

What's Changed

  • JWT implementation by @denglerchr in #1
  • Drag and drop functionality by @denglerchr in #2
  • improved detail view
  • base64 via content negotiation
  • fix docker image and push to Dockerhub

Full Changelog: v1.0.0...v1.1.0

Release v1.0.0

Choose a tag to compare

@denglerchr denglerchr released this 17 Nov 06:15

This open source project provides a HTTP REST API and web frontend for storing, converting, auto-deleting and retrieving files with custom metadata, organized into distinct databases. The focus is on image and audio data, but generic files can be stored as well. The software has an optional dependency on ffmpeg for automatic audio transcoding and metadata extraction.

Intended use-cases for the software are:

  • storing of camera data with metadata in a production environment, e.g., images for product quality checks
  • storing of audio samples captured using microphones, e.g., for condition monitoring of machines, animal observation

🚀 Features

  • Database Management: Create, list, view details, update housekeeping rules, and delete files managed in databases.
  • Dynamic Metadata: Supports defining custom fields (e.g., score, source, defect) for each database. These fields are stored and indexed for efficient searching.
  • Automated Housekeeping: A background service periodically cleans up files based on configurable age (set to 0 to disable) and disk space limits (set to 0 to disable).
  • Media Processing: Configure databases to automatically perform actions like converting images to JPEG or audio files to FLAC. This relies on the optional FFmpeg dependency.
  • Hybrid File Uploads: Optimizes file uploads by processing small files synchronously (returning 201 Created) and large files asynchronously (returning 202 Accepted). This provides immediate feedback to the user for large files, which can then be processed in the background.
  • Integrated Web UI: The Go application serves the Angular frontend from the embedded binary, providing a seamless user experience from a single executable.
  • Preview Generation: Automatically generates downscaled JPEG previews for images and waveform images for audio files (using FFmpeg) to enable fast-loading galleries.
  • Advanced Entry Search: The API supports powerful filtering on custom fields with operators like >, <, >=, <=, !=, and LIKE (for wildcard text search).
  • Authentication: Basic Authentication protects all API endpoints based on user roles stored in the database.
  • Config-File Initialization: On startup, can create users and databases from a TOML config file if they don't already exist.