Docent logo — a gallery room with a TV
Docent

There’s artwork
on TV tonight.

Docent is a gallery manager that actually gets art onto your Samsung Frame TV with one click. Drop an image into Docent, press "Display on Frame," and it's on your wall. No Samsung app, no USB drive, no cloud upload.

The Starry Night by Vincent van Gogh, displayed in a Samsung Frame TV
Vincent van Gogh · The Starry Night · 1889

The whole gallery, on your network

Upload, organize, identify, and display. Everything happens locally.

📺

One-Click Display

Docent doesn't just manage your art — it sends it to your TV. Press "Display on Frame" and the image appears on your wall instantly. Choose your frame and matte style right in the app. No Samsung app, no USB stick, no cloud upload. Just click.

🖼

Gallery View

Gorgeous scrolling view that lets you browse your art like a real gallery. Sort by year, artist, school, and more.

🤖

AI Art Analysis

Fill in art metadata like artist, title, year, medium, movement and mood automatically using Claude, GPT, Google Vision – or have them work together. Every field links to Wikipedia so you can keep learning.

✂️

Upload & Crop

Drag-and-drop upload with automatic 16:9 compliance checking. Non-conforming images open a built-in crop editor. Choose from shadow box, modern, and panoramic mattes.

🌦

Atmosphere

Get art that feels right for your day. Docent’s Atmosphere feature checks the weather, reads the mood tags on your art, and picks something that fits. Rainy Tuesday? Different wall than a bright Saturday. It even explains its choices, like a real Docent.

A laptop running Docent in front of a Samsung Frame TV displaying the selected artwork Docent managing a gallery on a Samsung Frame TV

Get going in two minutes, tops

No app store, no subscription, no cloud account. Docent is free open-source software that stays on your machine, runs on your network, and talks to your TV.

1

Clone & Launch

Double-click Docent.command or run from the terminal. A guided wizard handles setup — dependencies install automatically.

2

Connect Your TV

Enter your Frame TV's IP address. Docent connects over your local network. Your TV will ask you to allow it — press Allow on your remote.

3

Display

Browse your gallery, tap "Display on Frame" on any piece, and it's on your TV. That's it — one click from screen to wall. Or let Atmosphere pick for you based on the weather.

Two ways to figure out what's on the wall

Set up one or both. Either way, you get artist, title, year, and everything else back.

Optional

🔍 Stage 1: Identify

Google Vision reverse-image-searches your art across museum databases and art sites. Passes what it finds to Stage 2.

Google Vision

🎨 Stage 2: Analyze

A vision model looks at the art (plus any hints from Stage 1) and writes back artist, title, year, medium, movement, mood, and a description.

Claude OpenAI

Atmosphere

The weather changes. Your wall changes with it.

🌦 Today's Recommendation
The Starry Night
The Starry Night
☁️ 62°F · Partly cloudy · Arlington, VA

What people are saying about Docent

Featured on The Verge
Docent finally made this click for me. In ~7 years I've never gotten images onto my Frame this easily. I really love it now.
This thing is spectacular. I only played with it for a second, but yes, this should make life soo much easier to deal with my Frame TVs.
Brilliant, found my next weekend project.
Anything that is alternative for better than the under reliable Samsung app is a godsend!
I have been thinking about creating something like this for a long time, so happy to see how you have done it!
via email
It's great to see more of these kind of projects becoming available. Great work!
I love this kind of contributions in this community.

Getting started

Three ways to launch. All take about two minutes.

🖱 One-Click

Recommended

Best for most users. The setup wizard walks you through everything.

  1. Clone the repo:
    git clone https://github.com/danmunz/docent.git
  2. Double-click Docent.command in Finder
  3. Follow the guided setup — enter your TV's IP, optionally add AI keys

Python and dependencies install automatically if needed.

⌨️ Terminal

For developers and terminal users.

# Clone and configure
git clone https://github.com/danmunz/docent.git
cd docent
cp .env.example .env
# Edit .env — set DOCENT_TV_IP

# Launch
uv run python3 server.py

Open http://localhost:8000 in your browser.

🐳 Docker

For Unraid, Synology, or any Linux home server.

docker run -d --network host \
  -e DOCENT_TV_IP=192.168.1.XXX \
  -v docent-data:/data \
  --name docent \
  ghcr.io/danmunz/docent:latest

Open http://localhost:8000 in your browser. Data persists in the docent-data volume.