A bespoke media center browser app
- multiple users
- multiple folders per user
- explore media by folders
- browse by timeline
- TODO video
- TODO playlists
- TODO idle mode
- TODO guests
Folders View | Timeline View |
---|---|
I mostly use it to browse my collection of photos and videos when at home.
- saves money (no expensive photo cloud account)
- images and videos load blazing fast on phones, tablets, and the living room projector
- we know where the pictures are (meaning old school folders)
- and we can organize them however we want
- the whole family (and visitors) can browse and share media
I used to have a Google Photos payed account but got tired of paying to wait for images and videos to load.
So I downgraded to a 15GB Google account where I keep only the most recent media and a curated album of older (or timeless) things I might want to share with others when not at home.
As for the actual treasure chest, I keep it in a media server on the living room, properly backed up, of course.
Sure, at your own peril.
This software uses a filesystem database to store metadata about the server's managed folders and media files. These files will be located alongside the files (think ._DS_Store
kind of files, but called .<something>.noodle.json
)
The system is also capable of removing these files. "Supposedly" it never touches the original media files, only metadata files and compressed thumbnails. But, who knows ... this thing is not properly tested.
Not yet.
But it will be something along the lines of:
- Install NodeJS
- Clone this repository
- Create an
.env
file based on .env.example - Launch the Server
- Launch the Client APP
Sure!
I used Supervisord. Easy to setup and works flawlessly.
Sure? ... Not sure :-D I tested it a few months ago and it was working but I don't test it regularly.
Sure. Also at your own peril.
And you'll have to wire it all up yourself.
It is our realm. Welcome, you are invited.
Recommended software:
This Monorepo hosts all code for Mr. Noodles.
See each package's README for more details.
Lefthook should run automatically before every commit.
- lints all code
- does a global
tsc
compilation - builds shared code
- builds server(s)
- builds client app(s)
Note: if you encounter 🥊 lint
errors you should run npm run lint
for details (linting is silent because prettier
is noisy and breaks Lefthook's output buffering)
Copyright (c) 2023 Andre Torgal.
Published under a MIT License.