AI-Powered Photos App for the Decentralized Web
Go to file
2018-09-13 20:54:34 +02:00
cmd/photoprism Improved docker and application config 2018-09-13 20:54:34 +02:00
docs/img Improved keyword and color indexing 2018-09-11 23:43:03 +02:00
forms Major search API and database refactoring 2018-09-12 16:37:30 +02:00
frontend Improved docker and application config 2018-09-13 20:54:34 +02:00
recognize
server Improved docker and application config 2018-09-13 20:54:34 +02:00
testdata
.dockerignore Reorganized server assets directory and config; added --debug flag 2018-09-13 11:34:56 +02:00
.gitignore
.travis.yml
album.go Refactored tag search and added tag_slug column; improved search form 2018-09-13 07:05:13 +02:00
camera.go Improved docker and application config 2018-09-13 20:54:34 +02:00
CHANGELOG.md
colors_test.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
colors.go Improved keyword and color indexing 2018-09-11 23:43:03 +02:00
config_test.go Improved docker and application config 2018-09-13 20:54:34 +02:00
config.dev.yml Improved docker and application config 2018-09-13 20:54:34 +02:00
config.go Improved docker and application config 2018-09-13 20:54:34 +02:00
config.osx.yml Improved docker and application config 2018-09-13 20:54:34 +02:00
config.prod.yml Improved docker and application config 2018-09-13 20:54:34 +02:00
converter_test.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
converter.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
docker-compose.prod.yml Improved docker and application config 2018-09-13 20:54:34 +02:00
docker-compose.travis.yml
docker-compose.yml Improved docker and application config 2018-09-13 20:54:34 +02:00
Dockerfile Improved docker and application config 2018-09-13 20:54:34 +02:00
export.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
file.go Major search API and database refactoring 2018-09-12 16:37:30 +02:00
go.mod Refactored tag search and added tag_slug column; improved search form 2018-09-13 07:05:13 +02:00
go.sum Refactored tag search and added tag_slug column; improved search form 2018-09-13 07:05:13 +02:00
importer_test.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
importer.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
indexer.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
LICENSE
location.go Major search API and database refactoring 2018-09-12 16:37:30 +02:00
Makefile Improved docker and application config 2018-09-13 20:54:34 +02:00
mediafile_exif_test.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
mediafile_exif.go
mediafile_test.go Reorganized server assets directory and config; added --debug flag 2018-09-13 11:34:56 +02:00
mediafile.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
photo.go Refactored tag search and added tag_slug column; improved search form 2018-09-13 07:05:13 +02:00
README.md Major search API and database refactoring 2018-09-12 16:37:30 +02:00
search_test.go Improved docker and application config 2018-09-13 20:54:34 +02:00
search.go Improved docker and application config 2018-09-13 20:54:34 +02:00
tag.go Refactored tag search and added tag_slug column; improved search form 2018-09-13 07:05:13 +02:00
thumbnails_test.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
thumbnails.go Implemented client config and 404 error image for thumbnails, if original was not found 2018-09-13 10:23:06 +02:00
util_test.go Improved keyword and color indexing 2018-09-11 23:43:03 +02:00
util.go Improved docker and application config 2018-09-13 20:54:34 +02:00

PhotoPrism

Powered By MIT License Code Quality GitHub issues Build Status

PhotoPrism is a server-based application for automatically tagging, searching and organizing large amounts of JPEG and RAW files. It is functionally similar to popular cloud services such as Flickr or Google Photos. Originals are stored in the file system in a structured way for easy backup and reliable long-term accessibility.

Note: This software is still alpha and under active development. You're welcome to ask if you have any questions or would like to support the project.

Our goal is to provide the following features (tested as a proof-of-concept):

  • High-performance command line tool
  • Web frontend
  • No proprietary or binary data formats
  • Automatic RAW to JPEG conversion
  • Duplicate detection (JPEG and RAW can be used simultaneously)
  • Automated tagging using Google TensorFlow
  • Reverse geocoding based on latitude and longitude
  • Image search with powerful filters
  • Easy backup and export

Web Frontend

Open a terminal an type photoprism start to start the built-in server. It will listen on port 80 by default. The UI is based on Vuetify, a Material Design component framework for Vue.js 2.

Setup

Before you start, make sure you got Git and Docker installed on your system. Instead of using Docker, you can also setup your own runtime environment based on the existing Docker configuration (not recommended).

Step 1: Run Git to clone this project:

git clone git@github.com:photoprism/photoprism.git

Step 2: Start Docker containers:

cd photoprism
docker-compose up

Note: This docker-compose configuration is for testing and development purposes only.

Step 3: Open a terminal to run tests and commands:

docker-compose exec photoprism bash
make
make test
make install
go run cmd/photoprism/photoprism.go start

See Quick and easy guide for migrating to Go 1.11 modules for an introduction to Go Modules and Makefiles.

Concept