I'm about to become a first time father and I've been thinking about how to go about documenting my son's life. By documenting, I mean collecting all of the pictures/videos we take of him along with text descriptions of the events. Things like what we did for his 3rd birthday, his first words, when his Grandma died, etc. A sort of official record of everything that happened to him during his life. The idea being that when he's an adult he will have all of this in one place to go back to and look at when he wants.
The three main things I'm looking for are:
1) General Social Network stuff like uploading a post, pictures, etc. Possibly allowing other family members to contribute 2) The ability to download everything (pictures, posts, videos, etc.) into a single archive that comes with a html file that can be locally viewed 3) Something I can expect to exist 20 years from now
2 & 3 effectively eliminate every commercial site and anything that isn't open source in my mind.
My googling hasn't come up with anything that I think is suitable. I've come up with a few options:
(1) A self hosted Mastodon instance not connected to the fediverse. Mastodon has the most momentum behind it, but it doesn't seem to have the focus I want. It's more for short thoughts that are relevant for a relatively short amount of time.
(2) Creating my own site based on the ActivityPub standard. This is attractive because it gives me something to start on and would allow me to hook into the fediverse, if it ever really takes off. However, I can't seem to find a good basic ActivityPub library (preferrably Ruby/RoR) to use and rolling my own seems complicated.
(3) Creating the site from scratch based on my own data format. This is the simplest to get started, but it's going to be lacking in a lot of features and I'll spend a lot of time reinventing the wheel.
Anyone have thoughts or suggestions?