whatisgithub

What is immich-import-gui?

servalabs/immich-import-gui — explained in plain English

Analysis updated 2026-05-18

4TypeScriptAudience · generalComplexity · 2/5LicenseSetup · moderate

In one sentence

A local web interface that wraps the Immich command line tool, letting you bulk upload photos and videos to a self hosted Immich server without typing commands.

Mindmap

mindmap
  root((ServaLabs Importer))
    What it does
      Browses local folders
      Wraps Immich CLI upload
      Streams live upload output
    Tech stack
      TypeScript
      Next.js
      Immich CLI
    Use cases
      Bulk upload photos to Immich
      Avoid typing CLI commands
      Run unattended uploads
    Audience
      Immich self hosters
      Home server users
    Requirements
      Node.js installed
      Immich CLI on path
      Running Immich server

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Bulk upload a large folder of photos and videos to a self hosted Immich server without using the command line.

USE CASE 2

Run uploads that continue in the background even after closing the browser tab.

USE CASE 3

Preview what an upload will do using the dry run option before actually transferring files.

USE CASE 4

Automatically organize uploaded photos into albums during the import process.

What is it built with?

TypeScriptNext.jsImmich CLI

How does it compare?

servalabs/immich-import-gui0labs-in/vision-linkadarsh-me/image-sdk
Stars444
LanguageTypeScriptTypeScriptTypeScript
Setup difficultymoderatemoderateeasy
Complexity2/53/52/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Node.js, the Immich CLI on your system path, and a running Immich server with an API key.

You can use and modify the code freely, but if you run a modified version as a network service, you must share your modified source code with its users.

So what is it?

ServaLabs Importer is a web based interface for uploading photos and videos in bulk to a self hosted Immich server, which is a private, self hosted alternative to services like Google Photos. Immich already has an official command line tool for uploads, but that requires typing commands in a terminal. This project puts a point and click interface in front of that same tool, so you can browse folders on your computer, select the ones you want, choose upload options, and watch the upload happen without writing any commands yourself. The app is a single page website built with Next.js that runs locally on the same machine as the files you want to upload, since it needs to read that machine's file system directly. Once you pick folders and options such as whether to search subfolders, automatically create albums, or run a test without actually uploading, the app runs the official Immich upload command behind the scenes and streams its live output into a terminal like panel in the browser so you can watch progress in real time. One notable design choice is that uploads keep running even if you close the browser tab or disconnect, since the work happens on the server side rather than in the browser itself. To use it, you need Node.js, the Immich command line tool installed and available on your system path, and a running Immich server with its web address and an API key, which can be typed into the app or set as environment variables so they fill in automatically. The project is written in TypeScript and released under the GNU AGPLv3 license, which means that if you run a modified version of this tool as a network service, you are required to make your modified source code available to the people using it.

Copy-paste prompts

Prompt 1
Walk me through installing the Immich CLI and running ServaLabs Importer locally.
Prompt 2
Explain how to set my Immich server URL and API key using environment variables.
Prompt 3
Show me how the recursive and auto-album upload options work in this tool.
Prompt 4
Help me understand what the AGPLv3 license requires if I modify and host this tool myself.

Frequently asked questions

What is immich-import-gui?

A local web interface that wraps the Immich command line tool, letting you bulk upload photos and videos to a self hosted Immich server without typing commands.

What language is immich-import-gui written in?

Mainly TypeScript. The stack also includes TypeScript, Next.js, Immich CLI.

What license does immich-import-gui use?

You can use and modify the code freely, but if you run a modified version as a network service, you must share your modified source code with its users.

How hard is immich-import-gui to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is immich-import-gui for?

Mainly general.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.