Photofield
photofield.dev
external-link
Self-Hosted Personal Photo Gallery

Hi all!

I’d like to share some slow, but steady progress I’ve made on my self-hosted personal photo gallery - a Google Photos alternative. It’s been a while since I last posted any updates - the last time was about v0.9.2 on /r/selfhosted, so it’s actually my first post here.

What’s new?

Lots of things! Here’s a quick summary:

Show me the demo

https://demo.photofield.dev/

Now hosted on Hetzner’s arm64-based CAX11 - 2 vCPUs & 4 GB of RAM - the cheapest one.

The photos are © by their authors. Since migrating to the CAX11, it only uses one size of internally pregenerated sqlite-based thumbnails, taking up roughly 4% of the disk space of originals. Support for Synology Moments thumbnails is still there, but doesn’t seem as crucial as before.

How do I try it out?

It’s very low commitment, a single executable or Docker image that you can mount with read-only access to an existing file structure, see Quick Start (also on GitHub if the website is dead).

Another one??? Why?

It’s a conspiracy to increase fragmentation and increase shareholder value of big tech companies. 😄 Jokes aside, I think there is some space for a fast, self-contained, extremely easy to deploy solution. But mainly, it’s to scratch my developer itch and I get to learn new things.

Thanks

Thanks to everyone who’s been using it, contributing, and giving feedback! See also foss_photo_libraries for alternatives if this doesn’t fit your needs.

Let me know what you think and what you’d like to see next! 🙏

Mr. Forager
link
fedilink
English
410M

Wow wow! Just trying the demo out feels super snappy and good, also crazy how fast the images load compared to other solutions i’ve tried! Will defo give this a shot when available on Unraid (Unless i do it myself).

Here’s a 🌻 as my appreciation for your work!

mlunar
creator
link
fedilink
English
110M

Thanks!

Unfortunately I have no idea about the Unraid ecosystem, so I’m not sure what’s the best way to approach that. It seems like you can run Docker images, so that’s probably one way to go? Let me know if you get it to work!

@ahal@lemmy.ca
link
fedilink
English
410M

There’s nothing special you need to do to support Unraid beyond providing an image.

OP is likely talking about getting it added to the Community Applications app store, but tbh if you don’t use Unraid yourself it’s probably better if someone else who does maintains the template.

mlunar
creator
link
fedilink
English
110M

Good to know, thanks for the info!

Mr. Forager
link
fedilink
English
210M

Will do! 👌

Lemmy Tagginator
bot account
link
fedilink
310M

deleted by creator

Saving this for when I get my NAS (eventually)

Shimitar
link
fedilink
English
110M

This looks very cool and promising.

Iove that you can deploy on bare metal, immich doesn’t allow that.

Does it support base-url? I mean can I host it on xxx.mydomain.com/gallery for example?

mlunar
creator
link
fedilink
English
010M

Thanks!

You can run it on a subdomain, e.g. photos.mydomain.com with no special configuration, but it doesn’t support subpaths, e.g. mydomain.com/gallery/

Shimitar
link
fedilink
English
110M

Please add support for it, it would be greatly useful

mlunar
creator
link
fedilink
English
110M
@Weslee@lemmy.world
link
fedilink
English
110M

Do you have any plans for user Auth and uploading via the web app?

mlunar
creator
link
fedilink
English
210M

No concrete plans for auth yet, but there’s an feature request for this. I didn’t really want to give a sense of false security with a half-baked solution.

For uploading, I thought about it briefly and it could be interesting. How would you expect it to work?

I imagine you would configure a sort of a target folder structure, then it would dump all uploads based in that structure? Or fully managed like GPhotos/Immich where the app hashes, dedupes and owns the files directly? 🤔

@Weslee@lemmy.world
link
fedilink
English
210M

I haven’t tried it yet, just moved and waiting for the internet to be installed.

I suppose any type of upload would work really, depends how “lightweight” you wanted to stay.

It’s just a convenience feature

RBG
link
fedilink
English
3610M

Looks great, I got to admit I am a bit commited to Immich now but one cannot have too many good alternatives to fall back on if things don’t work as needed.

mlunar
creator
link
fedilink
English
2610M

It’s quite impressive how much the Immich folks have achieved in a relatively short period of time! I’m glad you found something that works for you :)

fmstrat
link
fedilink
English
810M

Out of curiosity, what are the primary differences from Immich? I’ll be starting down this path soon.

mlunar
creator
link
fedilink
English
2310M

I’d say Immich has quite a few more features, with the primary focus of backing up your media from your mobile devices with a more “managed” approach (it takes care of storing and organizing the files).

Photofield is more minimalistic (both in terms of user interface and as an application) and more useful if you have an existing directory structure that you want to view as a gallery. It also pulls a few neat tricks to make it work smoothly with up to ~600k files.

See also the linked comparison for more details. It’s mostly accurate, though video is a bit better with this release.

@paldepind@lemmy.world
link
fedilink
English
310M

Thanks for the link to the comparison. Setting up a self-hosted photo solution is on my todo list and that comparison looks like a great starting point to explore from.

@CodeGameEat@lemmy.world
link
fedilink
English
610M

Interesting, i might give it a try when i finish setting up my new servers, havent been satisfied with other picture solutions, usually feels like they’re doing too much haha. I just want simple and fast, so this might be it.

This looks like a way better interface over Synology photos which is fine, but missing the search and map feature. You need to see if they are hiring 😂

mlunar
creator
link
fedilink
English
310M

Ha, hiring only account managers 😅 It does have search and maps, but they are a bit rudimentary right now. Also I have to find some sample geolocated photos to put in the demo, it doesn’t have any right now.

@Flumpkin@slrpnk.net
link
fedilink
English
310M

Sorry if these are stupid questions.

Does this only show these foss_photo_libraries and your local photos?

Does it support jpegXL?

I’d love a seamless zoom feature for images in the browser. I use imagus but I’d love if the popup window could zoom to be bigger than the browser window.

mlunar
creator
link
fedilink
English
810M

Sorry if these are stupid questions.

Not at all! Thanks for taking an interest.

Does this only show these foss_photo_libraries and your local photos?

I’m not sure what you mean. foss_photo_libraries is a comparison table of different apps someone else maintains, but I thought it was a useful resource. The photos in the demo are a subset of the open images dataset and a couple of other samples that I picked for demo purposes.

If you install it locally you can point it to a folder and it should use each subfolder as an album, or you can configure custom albums.

Does it support jpegXL?

Yes actually, but I don’t have many files to test it, so I’m not sure how well it works. If you do I’d be interested to hear how it works for you. It uses FFmpeg to on-the-fly convert anything it can’t read natively.

I’d love a seamless zoom feature for images in the browser. I use imagus but I’d love if the popup window could zoom to be bigger than the browser window.

You can zoom by using the mouse wheel or by pinching to zoom if that’s what you mean? You should be able to zoom pretty much as much as you want. If you’re in the main view where the mouse wheel scrolls photos up and down you can hold Ctrl (Cmd?) to zoom instead.

@Flumpkin@slrpnk.net
link
fedilink
English
210M

Cheers, didn’t know that something like a usable “open images dataset” existed. Awesome.

The last bit isn’t really relevant for your app, just a general rant really. It’s just that I’d like better image viewing support all around. Like in browsers there is an image and you can click on it but then a new tab opens. I have imagus but it’s not ideal and restricts the image to the smaller browser window. In the explorer I have quicklook now that opens images with space but the zoom feature is half assed too. Then many images apps have long startup times (>0.2 secs) or are bloaty. It’s just a bit annoying that it’s 2024 and PCs still can’t handle images really well.

mlunar
creator
link
fedilink
English
210M

Haha, I hear you! Some things are a lot harder than they have any right to be.

@EisFrei@lemmy.world
link
fedilink
English
110M

The demo instance doesn’t show any images when using android+Firefox. Android+chrome is working.

mlunar
creator
link
fedilink
English
310M

Hmm, it seems to work for me. Which Android/Firefox version do you have?

@EisFrei@lemmy.world
link
fedilink
English
110M

Android 13.
Miui 14.0.11.
FF 122.1.0.

@EisFrei@lemmy.world
link
fedilink
English
210M

After forcing a Firefox restart it works. Weird hiccup

mlunar
creator
link
fedilink
English
2
edit-2
10M

Ah cool! Maybe the server broke for a sec? 🤷‍♂️

@xdr@lemmynsfw.com
link
fedilink
English
210M

Is this for families to share photos privately?

mlunar
creator
link
fedilink
English
410M

Depends on what you mean by sharing, but if you put all your photos on a local NAS and run this on it for example, then everyone with access to it would be able to see them through a browser.

There’s no explicit sharing feature though.

@xdr@lemmynsfw.com
link
fedilink
English
110M

No I meant putting it on a vps and giving family members login access so they can all save their photos and share within the network

mlunar
creator
link
fedilink
English
110M

Ah, I see! This is more of a solution for viewing existing photos, it’s not a fully fledged multi-user photo management solution.

If you had family members access and share photos via a file share though, you could use this to set up a common gallery that everyone could access via the browser.

It’s mostly meant to run on a local NAS though.

Create a post

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.

Rules:

  1. Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

  • 1 user online
  • 78 users / day
  • 308 users / week
  • 983 users / month
  • 3.73K users / 6 months
  • 1 subscriber
  • 3.91K Posts
  • 79.3K Comments
  • Modlog