Features
Everything Snip offers out of the box.
Syntax Highlighting
40+ programming languages with auto-detection. Powered by Highlight.js.
Supported languages: Auto, Plaintext, Bash, C, C++, C#, CSS, Dart, Dockerfile, Elixir, Erlang, Go, GraphQL, Haskell, HTML, Java, JavaScript, JSON, Julia, Kotlin, LaTeX, Lua, Makefile, Markdown, MATLAB, Nginx, Objective-C, OCaml, Perl, PHP, PowerShell, Python, R, Ruby, Rust, Scala, SCSS, Shell, SQL, Swift, Terraform, TOML, TypeScript, Vim, XML, YAML, Zig.
Auto Expiry
Set paste expiration time. Expired pastes are automatically cleaned up every 10 minutes.
| Value | Duration |
|---|---|
10m | 10 minutes |
1h | 1 hour |
1d | 1 day |
1w | 1 week |
1m | 1 month |
Security Features
Password Protection
Protect sensitive pastes with a password. Passwords are hashed with bcrypt. Password-protected pastes show a lock screen before revealing content.
Burn After Reading
Self-destructing pastes that are permanently deleted after being viewed once. Perfect for sharing secrets.
View Limits
Set a maximum number of views. The paste is automatically disabled once the limit is reached.
Custom Short URLs
Create memorable URLs for your pastes. Slugs must be unique; if taken, you'll get an error.
File Upload
Upload files via drag & drop, file picker, or clipboard paste. Supports text files of any language.
QR Code Sharing
Every paste has a QR code for easy mobile sharing. Generated client-side for privacy -- no external API calls.
Fork / Duplicate
Create a copy of any paste. Forked pastes get a "(fork)" suffix in the title. Password-protected pastes require the password to fork.
Full-Text Search
Search across paste titles and content. Results are paginated with 50 results per query.
Dark & Light Themes
Toggle between dark and light themes. Your preference is saved in localStorage.
Multi-Language Support
UI available in 5 languages with automatic browser detection:
- English
- Chinese
- Japanese
- French
- German
Language is detected from the Accept-Language header or a cookie.
Keyboard Shortcuts
| Key | Action |
|---|---|
Ctrl/Cmd + Enter | Submit paste form |
Tab | Indent 4 spaces in editor |
/ | Focus search box |
Esc | Blur input |
Image Paste
Paste images from clipboard directly into the editor. Images are converted to data URLs and embedded in the paste content.
REST API
Full REST API with API tokens for programmatic access. Create, read, delete pastes, search, manage tokens, and more. See API Reference.
Monitoring
Health Check
GET /healthz returns system health status including database connectivity, paste count, views, and storage usage.
Prometheus Metrics
GET /metrics exposes Prometheus-compatible metrics for paste count, views, tokens, and storage.
CLI Tool
Pipe content from stdin or files directly to Snip:
# From stdin
cat main.go | ./snip.sh --lang go --expire 1d
# From file
./snip.sh main.go --title "My Go file" --expire 1w