Do not use unless you know what you're doing - this project is a work in progress!
Pix aims to be a self-hosted multi-user photo gallery solution similar to Google Photos. Give it a folder of photos and it will index them, so you get to stay in control of your photos on the file system.
Ongoing discussion on the future of this project at https://www.reddit.com/r/selfhosted/comments/5fwcvf/open_source_familypersonal_photo_gallery_software/
- Add folders of photos as libraries into Pix
- Basic viewing of folders with thumbnails
- Detail lightbox view for viewing photos
- Sorting photos by date and other sorting options
- Ability to add multiple users with access controls
- Responsive web frontend which works on mobile
- Index, generate thumbnails for, and display videos
- Native mobile app
- Intelligent image tagging and face recognition
Pix is not working software and is not finished, but if you still want to give it a try, it's best to install Docker and Docker Compose, clone this repository and run docker-compose pull
and docker-compose up -d
. Then go to http://localhost:8080
to give it a try. You can scale the worker
service to spread indexing and thumbnail generation across multiple cores or servers.
Take a look at the Dockerfile
for what dependencies you need on your system:
libcairo2-dev libjpeg62-turbo-dev libpango1.0-dev libgif-dev build-essential g++
Make sure you have Node >= 6 installed too.
- Clone this repo
- Run
npm install
in the root cd
intopackages/pix-web
, runnpm install
andnpm run build
to build the static web assetscd
intopackages/pix-server
, runnpm install
andnpm run build
to compile the server side JS- Look at
packages/pix-server/src/config.js
to see what environment variables you need to set, ordocker-compose.yml
for examples. Make sure you haveNODE_ENV
set toproduction
. - Run server with
node server.js
and a worker instance withnode worker.js
- Profit?
Licensed under the AGPL License.