Skip to content

Mivi

Description

I am building Mivi as a self-hosted photo and video library for web and Android. The product is centered on keeping a personal collection on a server its owner controls, while allowing the same library to be used from a browser and a phone.

One API, two clients

The implementation is organized around a TypeScript API and a shared contract consumed by both clients. I am developing the backend and interfaces together so that the web and Android experiences use the same operations and agree on how they communicate with the server.

The current foundation

The current foundation establishes how clients connect, how state is stored and where longer-running operations belong.

  • Server discovery and trust help clients find and recognize a server.
  • SQLite persistence and migrations provide the storage foundation.
  • A separate background worker provides a place for longer-running operations.

How I built it

I am designing the product and building the backend, web and Android clients, along with the tooling used to build and test them. Media synchronization, archival organization and backups are ongoing development work.

More projects

Contact

Want to work together or ask about a project?

Contact me on LinkedIn

Found a bug? Each public project links to its issue tracker. Choose a project