/lespas

Les Pas, photo album app for Nextcloud user

Primary LanguageKotlinApache License 2.0Apache-2.0

Feature graphic

A photo album that saves and shares all your precious memory in the private Nextcloud server

Get it on Google Play Get it on F-Droid

Les Pas, is a free, modern, lightweight and fast gallery app. Organize your photos, GIFs and videos into albums for easy viewing and sharing. With built-in two-way sync with your Nextcloud server, your files are kept private, secure and safe.

Features:

  • Simple, beautiful and fast photos & videos viewing
  • Organized photos and videos in albums
  • Manage your phone's camera roll and auto backup to server
  • Synchronization works with Nextcloud server and among multiple devices, edit albums on Nextcloud server and on all your mobile devices simultaneously
  • Share albums and album slideshow with other Nextcloud users
  • Joint album, which you and other Nextcloud users can edit together
  • Search for photos by objects with AI
  • Search photos by location, support album slideshow in map (map data provided by OpenStreetMap)
  • Integrate with Snapseed for photo editing on mobile devices
  • Integrate with Muzei Live Wallpaper app, act as a source of Today in History
  • Share to social networks,option provided to strip photo's EXIF before sharing
  • Theme design inspired by Wes Anderson's works
  • Manage Remote Album, which have all it's photo's image file stored in Nextcloud server only, free up Phone's storage
  • Manage Local Album, with all files saved in App's private storage, stop being scanned by malicious apps
  • Open-source

Welcome Page Album List Album Detail Photo Viewer

Adding Photo Browsing Camera Roll Publishing Album Search by Objects

Search by Location Show Album in Map Show Photo with Map Settings

This project is built using the following open source software:

Faq

Why organize by album?

I believe when someone start searching his/her memory for a moment in the past, it's hard for him/her to recall the exact date or exact location, but rather easy to remember what was happening during that period of time, like kid's birthday or family trip to Paris. So organized photos by events is probably the best way for most people, therefore grouping photos by event into an album is the best choice.

Why use folder but not tag to group photos?

Les Pas uses folders to group photos on the server, e.g., each album in Les Pas app has a one-to-one relationship with a folder on your Nextcloud server. You can manage your photo collection by working with folders/files on server side or albums/photos on your phone, Les Pas will sync changes from both sides. But how about tags? Yes, tagging is much more flexible than folders, and Nextcloud has it's own file tagging support too. But not every picture format supports tagging, that makes tagging picture file a feature which relies heavily on platform specific functions. I would like my data (and yours too) to be platform neutral instead.

I have a hugh photo collection organized in nested folders, Les Pas only support a flat folder structure.

@steviehs make a cool script to help you out.

Why does Les Pas use a lot of storage space?

If you set the album as Local Album, Les Pas store photos in it's app private storage, so if you have a large collection of photos, you will find that it use a lot of storage space in Android's setting menu.
There are two reasons why Les Pas use private storage. First, Android introduced scope storage policy recently, highly recommends apps to stay out of share storage area. Second, storing photos in apps private storage area can prevent malicious apps scanning, uploading your photo secretly in the backgroud. Yes, they love your pictures so much, especially those with your face in it.
For privacy sake, stop using "/Pictures" folder in your phone's internal/external storage.

Since release 2.5.0, Les Pas support managing albums remotely. With Remote Album, all photo's and video's media file are stored in Nextcloud server, this will dramatically reduces app's storage footprint on mobile device.
Nextcloud has a reputation of sluggish image processing, to make Remote Album work, you need to setup Nextcloud Preview Generator app to automatically generate aspect ratio preview files of size 1024x1024. Here is an excellent document on how to do it.

About server using self-signed certificate

You need to install your certificates in your phone first. A quick search on instructions points to here and here.

Why there is no QR code scanning button on Login screen like in the screenshot?

Les Pas supports scanning QR code of server access token generated by Nextcloud server, by using external QR code scanner apps. This app should be compatible with ZXing, which will expose a standard API for Les Pas to call. Make sure your install a compatible scanner app before your start Les Pas for the first time, then you will see the scanning button.

About synchronization

Les Pas does two types of sync in the background. A two-way sync of your albums and a one-way backup of your phone's camera roll.
Whenever you did something with your albums on your phone, Les Pas will synchronize the changes to your server immediately. Since Nextcloud's push notification only work with Google Firebase Cloud Messaging, which Les Pas decided not to support due to privacy concern, any changes you make to your albums on server side will be synced to your phone during the next synchonization cycle.
Upon opening Les Pas app, it will sync with server once. If you enable periodic sync setting, Les Pas will synchronize with your server every 6 hours in the background.
One-way backup of phone's camera roll is a background job which also happen every 6 hours. So don't delete photos from your camera roll too fast too soon. If synchronization doesn't seem to work, especially when you phone is a Chinese OEM model, like Huawei, Xiaomi, Oppo etc, please allow Les Pas app to auto start and opt-out battery optimization.

Checklist for enabling sharing on Nextcloud server

To enable publishing (e.g. sharing album to other users on Nextcloud server), there are several things you need to take care beforehand:

  • Make sure your are using LesPas version 2.4.1+
  • Set up groups on Nextcloud server and add users who wish to share LesPas albums to the group. User not belongs to any group can not download sharee list from server, this is a limitation of Nextcloud Sharee API
  • Optionally, but highly recommended for the sake of smooth user experience, setup Nextcloud Preview Generator app to automatically generate aspect ratio preview files of size 1024x1024, LesPas will use those files to populate shared album list on phone.
  • Optionally, setup a specific "shared_with_me" folder to house all the shares you received, otherwise Nextcloud will dump all the shares you received onto your root folder. This can be done by adding line 'share_folder' => 'shared_with_me' into Nextcloud's config.php file. Refer to nextcloud documentation for details.