AI-Powered Photos App for the Decentralized Web
Go to file
2018-09-07 16:08:07 +02:00
cmd/photoprism Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
docs/img Proof-of-concept for advanced search for; updated docs 2018-09-07 16:05:22 +02:00
frontend Proof-of-concept for advanced search for; updated docs 2018-09-07 16:05:22 +02:00
recognize Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
server Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
testdata Implemented working importer and added unit tests 2018-02-27 19:04:48 +01:00
.dockerignore Use make for Dockerfile and Travis CI 2018-09-05 22:55:28 +02:00
.gitignore Improved Docker configuration 2018-09-05 18:05:34 +02:00
.travis.yml Use make for Dockerfile and Travis CI 2018-09-05 22:55:28 +02:00
album.go Implemented migrate-db command 2018-07-18 15:17:56 +02:00
browse.go Initial proof-of-concept 2018-02-04 17:34:07 +01:00
camera.go Separate table for camera models and improved search form (draft) 2018-08-15 09:59:51 +02:00
CHANGELOG.md Added Makefiles and migrated to go modules 2018-09-05 20:26:03 +02:00
config_test.go Implemented index command 2018-07-20 10:54:31 +02:00
config.example.yml Implemented navigation 2018-08-03 15:17:13 +02:00
config.go Improved Docker configuration 2018-09-05 18:05:34 +02:00
converter_test.go Fixed filenames in tests to make them pass on case-sensitive filesystems 2018-02-28 11:11:26 +01:00
converter.go Implemented convert command 2018-06-16 14:19:18 +02:00
docker-compose.travis.yml Using pre-built Docker image for Travis CI 2018-09-05 18:16:53 +02:00
docker-compose.yml Improved Docker configuration 2018-09-05 18:05:34 +02:00
Dockerfile Use make for Dockerfile and Travis CI 2018-09-05 22:55:28 +02:00
export.go Implemented migrate-db command 2018-07-18 15:17:56 +02:00
file.go Improved photo search 2018-08-09 23:10:05 +02:00
go.mod Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
go.sum Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
importer_test.go Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
importer.go Implemented index command 2018-07-20 10:54:31 +02:00
indexer.go Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
LICENSE Updated copyright in LICENSE file 2018-09-05 18:52:04 +02:00
location.go Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
Makefile Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
mediafile_exif_test.go Fixed filenames in tests to make them pass on case-sensitive filesystems 2018-02-28 11:11:26 +01:00
mediafile_exif.go Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
mediafile_test.go Code clean-up 2018-02-28 10:08:49 +01:00
mediafile.go Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
photo.go Separate table for camera models and improved search form (draft) 2018-08-15 09:59:51 +02:00
query.go Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
README.md Update README.md 2018-09-07 16:08:07 +02:00
tag.go Implemented navigation 2018-08-03 15:17:13 +02:00
thumbnails_test.go Implemented index command 2018-07-20 10:54:31 +02:00
thumbnails.go Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
util_test.go Implemented working importer and added unit tests 2018-02-27 19:04:48 +01:00
util.go Code clean-up 2018-02-28 10:08:49 +01:00

PhotoPrism

Powered By MIT License Code Quality GitHub issues Build Status

PhotoPrism is a server-based application for privately managing 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 join our team.

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
  • Duplicate detection
  • Automated tagging using Google TensorFlow
  • Reverse geocoding based on latitude and longitude
  • Image search with powerful filters
  • Easy backup and export

User Interface

The Web frontend 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