Self-hosted, super simple photo stream
github.comIf you're looking for a self-hosted/decentralized Instagram alternative, there's also pixelfed.org, a very active project which supports ActivityPub. This means that people can follow your "Instagram" (really Pixelfed) stream from their "Twitter" (really Mastodon) account.
I keep looking at Pixelfed, and even as a relatively technical person, I have absolutely no idea how to get going with it.
Right now, go to pixelfed.org and there's a "Join" button in the top right corner, click on that and there's a message telling me "To join Pixelfed, you need to pick an instance. You can find a list of instances on the sites below." - click on either of those and it's a completely baffling list of stuff with no obvious way to continue. At this point I always give up.
> click on either of those and it's a completely baffling list of stuff with no obvious way to continue.
Hah, you're right, you end up in some slow-loading dashboard (hooray fancy graphed realtime numbers!). I clicked on a random hostname, it's another dashboard page with the hostname in large, the same hostname as a link as a subtitle. I clicked the link, and hey, it's a page that looks like Instagram's sign up page, with the difference being that this one says:
"Registrations are closed."
I tried a few more sites, even the one with the most number of users, and they all say this. Only the 5th site I clicked on allows me to register.
Ah only now do I notice the column "Open Signups" in their fancy dashboard...
The author very actively try to avoid centralizing it which may explain why all big instances has signups closed.
Yes, it's still early days for them so signing up isn't as easy as it can be. It's very usable already, though.
But it's worth noting that Pixelfed is intended to be your own walled garden - there's no "here's my public photo stream" configuration. It's intended more like a friends-and-family thing.
That being said, it's open source, so there are hacks to make your stream public. But they're hacks, and you're not going to get that out of the box.
What do you mean? Here's my public photo stream: https://pixelfed.social/stavros
You can even follow me from your instance. You can't get more public than that.
Hey, they fixed it! It's amazing what 2 months can do. The previous version had some pretty borked handling of public timelines.
Having said that, it still requires a bit of hackery. There's no way to get rid of the home/landing page if there's the one user account, so you have to do a bit of php/apache/nginx/whatever magic to redirect past it to your user timeline.
Looks like PHP.
Hmm, this looks great. I'd really love to pair it with a simple way to add text or tags to my photos. What is the simplest way to write "Visit to the creek after the bushfire" and save it with the two or three photos I took that day?
I wish (hope?) something simple like this is supported in a linux picture viewing application, and I just don't know which one it is. Can a line or two of text be stored in an EXIFish field? Has someone already written a script to take care of this?
But back to the main point - this is a great app and I can see myself using it to share photos with friends and family. Thanks for making it :)
As for the 'linux picture viewing application', I've started using the mpv video player[1] for showing a local gallery of photos and videos. Text is added as subtitle files, such as SubRip .srt files[2]. Image-specific options can be configured in mpv, such as the "image-display-duration"[3].
[1] https://mpv.io/ [2] https://en.wikipedia.org/wiki/SubRip [3] https://github.com/occivink/mpv-image-viewer/blob/master/mpv...
EXIF has a well-adopted Comments tag (if you edit the comments on Windows, it'll show up under XPComments). You can pull them out with exiftool, and using -j renders output as json. If you want cross-platform support, auto-install of exiftool, better parsed results, and typescript typings, you can use https://github.com/photostructure/exiftool-vendored.js (which I extracted from PhotoStructure and open-sourced).
This is built using Jekyll, which has built-in support for both categories and tags (for blog posts, anyway) via yaml front-matter: https://jekyllrb.com/docs/posts/#categories-and-tags
That might be more involved than you want, but given the structure of this project I don't know of a better way.
Something like Lychee might provide more of the feature set you want.
Very interesting if you consider the "offline fist" or "local first" movement that supports the idea that all content must be created, stored and managed by the user first, then shared in the cloud(s). We saw the first wave of discussions about text-based content, then a void when the focus moved to images and video. Solutions like this one may represent a turning point.
I like the look and feel of this. My wife is an amateur photographer and she’s been looking for a simple way to post / share outside of social media. Fun side project for the weekend setting this up!
Just wanted to say thank you, I have been looking for something almost like this.
Only thing it is missing for me is support for videos. But I know videos are pain to self-host and if you use embedded player from YouTube or Vimeo then it kills the aesthetics.
peertube attempts to address this pain and supports the activitypub fediverse
I do like the idea, and I've love to move from Google Photo into something... now Google.
However, Google Photos covers an aspect that this does not: it syncs the photos _off_ my phone into an online stream.
I actually use Google Photos because it's the only way of getting photos off your phone. The only other mechanism is iCloud, but if you don't have a Mac, there's no way to read from it.
I use https://www.photosync-app.com/home.html On my phone and transfer photos when on home wifi AND phone being charged to my NAS. I have a private static photo gallery generated from my nas.
For static gallery generation, I use a project called sitelen-mute.
https://github.com/kensanata/sitelen-mute
No affiliation with either tools.
They advertise Linux support in many places, but I don't see a download link anywhere.
I have found this though, which lets me fetch the photos via iClouds (I guess I prefer that to google, and I can script it rather than do it via the web).
Which NAS do you use?
Also not OP, but I really like FreeNAS running on an HP Microserver.
The older Gen8 boxes Just Work.
The newer Gen10 boxes hang the first time you boot, you need to pause it and set the hw.pci.realloc_bars loader variable to 1. Details here: https://www.virten.net/2017/10/fix-for-freenas-on-hpe-micros...
Not OP, but I've had excellent luck with a Synology DS418 containing a RAID-1 of four 8TB disks I peeled out of USB enclosures bought absurdly cheap last Black Friday. Simple, fast, and compatible; the drawback is that it's expensive compared to similar 4-bay SOHO offerings, but IMO it's worth the premium.
I've been reading about Synology, but I can't figure out the encryption.
Does the encryption key also live in the NAS as well? Is it like, sitting there?
I haven't used it, so I've no idea.
A desktop PC with a bunch of SATA disks and ZFS. Nothing fancy, but works great and is super stable.
My entire digital footprint is just 2 TiB, so the NAS has my back covered for several years now, and probably will for a few more years.
While the interface isn't great, icloud.com _does_ allow you to view and download your photos without a Mac. I really do wish they would put more resources into updating their web UI, though.
I now use Huawei/Android and before that I was on iPhone/iOS. In both cases I am using Dropbox as the means move photos to my hard disk. I upload all photos I want to Dropbox. Dropbox renames the images from "Image1" to Image-YYYY-MM-DD-HH-MM-SS.jpg. I then download the lot as one big zip file, expand it on my backup disk and that is sucked to my cloud backup. I do this every month, it is a manual process but it's not an overkill. This way I save time on renaming the files.
nextCloud and similar have the sync photo functionality and could probably be glued together with this without to much effort. That said I also use Google Photo even though i have a servers and stuff for other personal uses.
Nextcloud synchronization is decent only on iOS (I use it). On Android it's a pretty bad experience.
On Android something like Syncthing could be better for the job.
I use Google photo, but I have an api scripts to pull the photos local.
Can you share the script? Since Google disabled the photos-go-to-GDrive thing I don't have a way to automatically back up my photo stream.
This is what I use: https://github.com/dtylman/gitmoo-goog
FWIW, Dropbox can automatically pull photos off your phone as you take them. I like it better because less Google in my life is good.
I think the ultimate would be for someone to develop an app that works with one (or multiple?) of these various photo apps so that everyone else can also get the totally seamless experience.
Plex can also auto upload photos to a server you own.
I really really want this to work, but it doesn't, at least on iPhones. The sync only seems to work while the app is open, it uploads JPEG instead of HEIC, and videos aren't uploaded at all.
I would be happy to pay money to make this work properly.
In the meantime, I pay extra for Google Photos (for display/search/tagging) and iCloud (for reliable auto backup) and need to find a way to automatically download the iCloud things to my Plex/NAS machine.
Yeah it definitely needs work. I primarily use it as a backup. Google photos is my primary because of their unlimited drive data. Although now that photos don’t show up in google drive I’m going to have to figure something else out.
You reminded me. GPhotos is stripping the GPS data from the photos, which is why I started using iCloud.
I just want to take my data from here... and put it there... and not have it trashed along the way. I will pay money for this service.
Interesting, didn't know that. Seems weird they'd do that considering they show your photos on a map.
I can't speak to their motives, but here's a WONTFIX bug for it: https://issuetracker.google.com/issues/80379228
This is nice and all, but why on earth do I have to enable JavaScript to see the photos?
Just finished the readme and I have no idea what makes this "super simple".
Awesome. What a joyful experience after IG or similar services. Nimble and simple.
Another good option in this space: https://github.com/thumbsup/thumbsup
Look awesome - I've been looking for some hackable code like this to present my photos from google drive. Cheap photo hosting from google + minimal load on my server...
I hope it could be extended to retrieve tags and titles from IPCT/Exif. To rename files to photo titles is not very viable and scalable solution, IMHO.
Thank you for sharing! I've been looking for something just like this forever.
Looks cool. How much storage do Github Pages or Netlify support for free?
Github pages will limit you to their git repo size, which appears to be 75Gb and a maximum of 100Mb for any one file.
(Using github to host my photos was my thought as well)
thank you for sharing. I was thinking about building the same thing.
I need exactly this! Looks very nice and simple, and fast.
Seems interesting, but I'm missing a preview site ;)
It[1] was in the project description on GitHub.
Very nice, congrats! :)
where is the back button ?