A modern web application for viewing SMS and MMS message backups. Import your messages from "SMS Backup & Restore" XML files and browse them in a texting app-like interface.
Run the latest stable version:
docker run -d \
-p 8081:8081 \
-v $(pwd)/data:/data \
-e DB_PATH_PREFIX=/data \
ghcr.io/lowcarbdev/sbv:stableservices:
sbv:
image: ghcr.io/lowcarbdev/sbv:stable
ports:
- "8081:8081"
volumes:
# Mount data directory for persistent database storage
- ./data:/data
environment:
- PORT=8081
- DB_PATH_PREFIX=/data
restart: unless-stopped- Multi-user - Create a username/password to log in
- Import SMS Backup & Restore XML - Upload XML files from the web interface.
- Tested with large backups - Works with multi-GB backups
- SMS, MMS, and call logs support - Read all types of call and message records.
- Inline image and video - View images or watch videos as you browse. Even works with Apple HEIC and 3gp videos.
- Fast conversation filtering - Skip to the right conversation.
- Full-text search - Find what you want fast.
- Activity view - See it as it happened.
- vCard preview - Preview the contents of contact cards (vCards)
- Backend: Go with SQLite database
- Frontend: React with Vite and Bootstrap CSS
- Database: SQLite (stores messages, including media as BLOBs)
The Docker setup uses a bind mount to persist the database:
- Host path:
./data/sbv*.db - Container path:
/data/sbv*.db
This ensures your data survives container restarts and updates.
One sqlite database is created per user.
MIT
- Please submit any issues to github issues
- PRs are welcome, but for anything over ~100 lines, please submit a github discussion first
- Imports are somewhat slow for large imports on Linux
- In group MMS, the sender label only shows the phone number (not contact name) because the contact name is not available in the XML file






