Introduction
Zipline gives you a personal file hosting server that works seamlessly with screenshot tools like ShareX, Flameshot, and custom scripts. Upload images, files, or text snippets and get shareable links instantly, all on your own infrastructure.
What Zipline Does
- Accepts file uploads via API and returns shareable direct links
- Displays an image and file gallery with metadata and previews
- Shortens URLs with custom slugs and tracks click statistics
- Provides a paste bin for sharing code snippets and text
- Supports multiple users with individual dashboards and upload quotas
Architecture Overview
Zipline is a Next.js application backed by PostgreSQL for metadata and a configurable storage layer for files. Uploads are handled through a REST API authenticated with per-user tokens. The frontend renders a responsive gallery with lazy-loaded thumbnails. Storage backends include local disk and S3-compatible services. The application is designed to run behind a reverse proxy and supports Docker Compose for one-command deployments.
Self-Hosting & Configuration
- Deploy with Docker Compose using the provided configuration files
- Configure the database connection and storage backend in the environment file
- Generate upload tokens from the admin dashboard for each user or tool
- Set up ShareX or Flameshot with the provided custom uploader configuration
- Configure a reverse proxy with Nginx or Caddy for HTTPS and custom domains
Key Features
- ShareX and Flameshot integration with one-click uploader config export
- Image gallery with grid view, filtering, and bulk operations
- URL shortener with custom slugs, expiration dates, and analytics
- Code and text paste bin with syntax highlighting
- Embed customization with Open Graph metadata for social media previews
Comparison with Similar Tools
- XBackBone — PHP-based ShareX server; Zipline uses Next.js with a more modern UI and richer gallery features
- File Browser — general-purpose file manager; Zipline is specialized for screenshot uploads and shareable links
- Imgur / Gyazo — cloud-hosted image sharing; Zipline gives you full control on your own server
- Lsky Pro — image hosting with Chinese community focus; Zipline has broader ShareX integration and built-in URL shortening
- PicGo — client-side upload tool; Zipline is the server-side component that receives and hosts the files
FAQ
Q: How do I connect ShareX to Zipline? A: In the Zipline dashboard, navigate to your user settings and export the ShareX configuration file. Import it into ShareX and uploads will go directly to your server.
Q: What file types can I upload? A: Zipline accepts any file type. Administrators can configure maximum file size and optionally restrict allowed MIME types.
Q: Does Zipline support S3 storage? A: Yes. You can configure any S3-compatible storage backend (AWS S3, MinIO, Backblaze B2) in the environment variables.
Q: Can I set files to expire automatically? A: Yes. Uploads can have an expiration time set via the API or dashboard, after which the file and its link are automatically removed.