Project

Media Bank

  • 2servers
  • 10Kusers
  • 5Mfiles in storage
Selected work

Media Bank Some project information is withheld from public access under an NDA. Further details may be shared on personal inquiry.

Tourism · Photo & video

Photos and videos in one library. AI does the tagging.

A media bank for a tourism organization: a private photo and video library for the photo desk, press office, social media team and partners. We built the catalog with albums and license filters, uploads from a computer and folder import from cloud storage, automatic file processing with AI tags, a processing console and access management.

Scale and technology

2
project servers
10K
portal users
5M
files in storage
Core technologies
GoNext.jsPHPLaravelPostgreSQLRedisElasticsearchNginxDockerImageMagickFFmpeg

AI organization of photos and videos

Every uploaded file goes through a pipeline with no manual work: crops, content recognition and auto-tags. Photos and videos can be found by tags straight away, and the folder structure from cloud storage becomes albums.

Cover: photo library with auto-tags, license statuses and folder import

Catalog

  • Thousands of photos and videos in one catalog: albums and sections of any depth, everything in its place
  • AI assigns the tags itself — no manual labeling needed, and mistakes can be fixed in the file card
  • Search by tags, shooting date, orientation and license, with all filters in a single row
  • A file card with a preview, shooting data and tags
  • Every file has a license status and a contract, so it is clear at once what can be published

Import

  • Upload from a computer or cloud storage in one interface, with no switching between services
  • Storage is connected read-only — original files are never changed or deleted
  • Selected folders turn into albums on their own and keep their structure
  • Hundreds of files in one pass, with progress for every file and for the whole batch
  • A license can be set for the whole batch at once, without opening each file

Control

  • The console shows what is being processed right now: upload, crops, recognition and auto-tags
  • The status of every step is shown separately, errors and the queue are visible at once, no digging through logs
  • A summary of files, albums, queue and errors in one place
  • Administrator, editor and user roles, each with its own level of access
  • User list and access rights in one place
How the media bank works

Photo library

Photo library: sections, filters and photo cards with licenses and tags

All albums on one screen: sections on the left, filters on top, file cards with a score, license and auto-tags.

Photo library

File details

Photo details: license, album, AI tags and EXIF

A photo opens in the viewer next to its license status, album, file name, date taken, contract and the tags assigned by AI. Below are the EXIF data: camera, aperture, shutter speed, ISO. The original downloads with one button.

Photo library

Managing albums

Album sidebar in edit mode and the orientation filter

In edit mode, albums are renamed, moved and deleted right in the sidebar. Orientation and license filters work inside an album.

Photo library

New album

New album dialog with a parent section picker

An album is created at the top level or inside an existing section, which gives nested collections such as Seasons / Winter.

Video

Videos

Video section: themed albums and previews with orientation and length

A separate section for video with themed albums: panoramas, the Underground, theatre, festivals, Reels and Shorts. Each preview shows 9:16 or 16:9 orientation and the clip length.

Upload

Upload from a computer

Upload window with per-file progress and settings for all files

Files are dragged into the window, each with its own progress. Album, license and contract number are set for all files at once, and the date taken comes from EXIF. Unsupported formats are skipped, and the upload can run in the background.

Upload

Import from cloud storage

Import from cloud storage: scanning folders

Once cloud storage is connected, the media bank scans its folder structure in the background. Access is read-only: the files in storage stay untouched.

Upload

Choosing folders

Choosing cloud storage folders to upload

Folders are shown as tiles with file counts. Selected folders become albums or go into an existing album, and the license is set for all of them at once.

Upload

Import summary

Import summary: uploaded, already in the library, errors

How many files were uploaded, how many were already in the media bank and how many failed after retries. New files go straight to automatic processing.

Administration

Processing console

Processing console: crop and recognition statuses and auto-tags

Every file goes through a pipeline: upload, crops, AI recognition and auto-tags. The table shows the status of each step and the number of attempts, and a failed step can be re-run. The system assigns tags on its own.

Administration

Users

User list with access levels

A list of users with access levels and sign-in counts: administrators, editors and external users such as partner agencies.

skin in the game

We don’t just build for clients. We run our own products.

Since 2013 we have launched, sold and operated our own services. That changes how we work on yours.

  1. 01

    Owner’s judgment

    We weigh every feature against cost and payback — and push back on scope that doesn’t serve the goal.

  2. 02

    Production-proven stack

    The architecture we recommend is the one running our own products under real load.

  3. 03

    We stay after launch

    We operate our own services 24/7, so monitoring, releases and incidents are routine, not an upsell.

  4. 04

    Business, not just code

    Pricing, payments, analytics, growth — we have been through it ourselves and speak your language.