mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
feat: pipeline templates, analytics opt-out, 83 conversion presets, positioning + e2e modernization
Lands five integrated branches: pipeline templates (#355), analytics opt-out (#354), 83 conversion presets bringing the catalog to 240 tools (#356), self-hosted positioning (#353), and e2e modernization (#351). Integration fixes: aligned stale web analytics tests with the opt-out/allow-list model, closed 3 CodeQL incomplete-sanitization alerts in the i18n generator, resolved settings/index/docs/format-matrix conflicts, and corrected tool counts to 240.
This commit is contained in:
@@ -313,3 +313,169 @@
|
||||
/tools/create-zip /tools/files/create-zip/ 301
|
||||
/tools/extract-zip/ /tools/files/extract-zip/ 301
|
||||
/tools/extract-zip /tools/files/extract-zip/ 301
|
||||
/tools/jpg-to-png/ /tools/image/jpg-to-png/ 301
|
||||
/tools/jpg-to-png /tools/image/jpg-to-png/ 301
|
||||
/tools/png-to-jpg/ /tools/image/png-to-jpg/ 301
|
||||
/tools/png-to-jpg /tools/image/png-to-jpg/ 301
|
||||
/tools/jpg-to-webp/ /tools/image/jpg-to-webp/ 301
|
||||
/tools/jpg-to-webp /tools/image/jpg-to-webp/ 301
|
||||
/tools/png-to-webp/ /tools/image/png-to-webp/ 301
|
||||
/tools/png-to-webp /tools/image/png-to-webp/ 301
|
||||
/tools/webp-to-jpg/ /tools/image/webp-to-jpg/ 301
|
||||
/tools/webp-to-jpg /tools/image/webp-to-jpg/ 301
|
||||
/tools/webp-to-png/ /tools/image/webp-to-png/ 301
|
||||
/tools/webp-to-png /tools/image/webp-to-png/ 301
|
||||
/tools/jpg-to-avif/ /tools/image/jpg-to-avif/ 301
|
||||
/tools/jpg-to-avif /tools/image/jpg-to-avif/ 301
|
||||
/tools/png-to-avif/ /tools/image/png-to-avif/ 301
|
||||
/tools/png-to-avif /tools/image/png-to-avif/ 301
|
||||
/tools/webp-to-avif/ /tools/image/webp-to-avif/ 301
|
||||
/tools/webp-to-avif /tools/image/webp-to-avif/ 301
|
||||
/tools/heic-to-jpg/ /tools/image/heic-to-jpg/ 301
|
||||
/tools/heic-to-jpg /tools/image/heic-to-jpg/ 301
|
||||
/tools/heic-to-png/ /tools/image/heic-to-png/ 301
|
||||
/tools/heic-to-png /tools/image/heic-to-png/ 301
|
||||
/tools/heic-to-avif/ /tools/image/heic-to-avif/ 301
|
||||
/tools/heic-to-avif /tools/image/heic-to-avif/ 301
|
||||
/tools/jpg-to-gif/ /tools/image/jpg-to-gif/ 301
|
||||
/tools/jpg-to-gif /tools/image/jpg-to-gif/ 301
|
||||
/tools/png-to-gif/ /tools/image/png-to-gif/ 301
|
||||
/tools/png-to-gif /tools/image/png-to-gif/ 301
|
||||
/tools/gif-to-jpg/ /tools/image/gif-to-jpg/ 301
|
||||
/tools/gif-to-jpg /tools/image/gif-to-jpg/ 301
|
||||
/tools/gif-to-png/ /tools/image/gif-to-png/ 301
|
||||
/tools/gif-to-png /tools/image/gif-to-png/ 301
|
||||
/tools/webp-to-gif/ /tools/image/webp-to-gif/ 301
|
||||
/tools/webp-to-gif /tools/image/webp-to-gif/ 301
|
||||
/tools/jpg-to-tiff/ /tools/image/jpg-to-tiff/ 301
|
||||
/tools/jpg-to-tiff /tools/image/jpg-to-tiff/ 301
|
||||
/tools/png-to-tiff/ /tools/image/png-to-tiff/ 301
|
||||
/tools/png-to-tiff /tools/image/png-to-tiff/ 301
|
||||
/tools/tiff-to-jpg/ /tools/image/tiff-to-jpg/ 301
|
||||
/tools/tiff-to-jpg /tools/image/tiff-to-jpg/ 301
|
||||
/tools/tiff-to-png/ /tools/image/tiff-to-png/ 301
|
||||
/tools/tiff-to-png /tools/image/tiff-to-png/ 301
|
||||
/tools/psd-to-jpg/ /tools/image/psd-to-jpg/ 301
|
||||
/tools/psd-to-jpg /tools/image/psd-to-jpg/ 301
|
||||
/tools/psd-to-png/ /tools/image/psd-to-png/ 301
|
||||
/tools/psd-to-png /tools/image/psd-to-png/ 301
|
||||
/tools/png-to-eps/ /tools/image/png-to-eps/ 301
|
||||
/tools/png-to-eps /tools/image/png-to-eps/ 301
|
||||
/tools/jpg-to-eps/ /tools/image/jpg-to-eps/ 301
|
||||
/tools/jpg-to-eps /tools/image/jpg-to-eps/ 301
|
||||
/tools/eps-to-png/ /tools/image/eps-to-png/ 301
|
||||
/tools/eps-to-png /tools/image/eps-to-png/ 301
|
||||
/tools/eps-to-jpg/ /tools/image/eps-to-jpg/ 301
|
||||
/tools/eps-to-jpg /tools/image/eps-to-jpg/ 301
|
||||
/tools/png-to-svg/ /tools/image/png-to-svg/ 301
|
||||
/tools/png-to-svg /tools/image/png-to-svg/ 301
|
||||
/tools/jpg-to-svg/ /tools/image/jpg-to-svg/ 301
|
||||
/tools/jpg-to-svg /tools/image/jpg-to-svg/ 301
|
||||
/tools/tiff-to-svg/ /tools/image/tiff-to-svg/ 301
|
||||
/tools/tiff-to-svg /tools/image/tiff-to-svg/ 301
|
||||
/tools/psd-to-svg/ /tools/image/psd-to-svg/ 301
|
||||
/tools/psd-to-svg /tools/image/psd-to-svg/ 301
|
||||
/tools/eps-to-svg/ /tools/image/eps-to-svg/ 301
|
||||
/tools/eps-to-svg /tools/image/eps-to-svg/ 301
|
||||
/tools/svg-to-png/ /tools/image/svg-to-png/ 301
|
||||
/tools/svg-to-png /tools/image/svg-to-png/ 301
|
||||
/tools/svg-to-jpg/ /tools/image/svg-to-jpg/ 301
|
||||
/tools/svg-to-jpg /tools/image/svg-to-jpg/ 301
|
||||
/tools/jpg-to-pdf/ /tools/image/jpg-to-pdf/ 301
|
||||
/tools/jpg-to-pdf /tools/image/jpg-to-pdf/ 301
|
||||
/tools/png-to-pdf/ /tools/image/png-to-pdf/ 301
|
||||
/tools/png-to-pdf /tools/image/png-to-pdf/ 301
|
||||
/tools/heic-to-pdf/ /tools/image/heic-to-pdf/ 301
|
||||
/tools/heic-to-pdf /tools/image/heic-to-pdf/ 301
|
||||
/tools/tiff-to-pdf/ /tools/image/tiff-to-pdf/ 301
|
||||
/tools/tiff-to-pdf /tools/image/tiff-to-pdf/ 301
|
||||
/tools/webp-to-pdf/ /tools/image/webp-to-pdf/ 301
|
||||
/tools/webp-to-pdf /tools/image/webp-to-pdf/ 301
|
||||
/tools/gif-to-pdf/ /tools/image/gif-to-pdf/ 301
|
||||
/tools/gif-to-pdf /tools/image/gif-to-pdf/ 301
|
||||
/tools/eps-to-pdf/ /tools/image/eps-to-pdf/ 301
|
||||
/tools/eps-to-pdf /tools/image/eps-to-pdf/ 301
|
||||
/tools/pdf-to-jpg/ /tools/pdf/pdf-to-jpg/ 301
|
||||
/tools/pdf-to-jpg /tools/pdf/pdf-to-jpg/ 301
|
||||
/tools/pdf-to-png/ /tools/pdf/pdf-to-png/ 301
|
||||
/tools/pdf-to-png /tools/pdf/pdf-to-png/ 301
|
||||
/tools/pdf-to-tiff/ /tools/pdf/pdf-to-tiff/ 301
|
||||
/tools/pdf-to-tiff /tools/pdf/pdf-to-tiff/ 301
|
||||
/tools/mov-to-mp4/ /tools/video/mov-to-mp4/ 301
|
||||
/tools/mov-to-mp4 /tools/video/mov-to-mp4/ 301
|
||||
/tools/webm-to-mp4/ /tools/video/webm-to-mp4/ 301
|
||||
/tools/webm-to-mp4 /tools/video/webm-to-mp4/ 301
|
||||
/tools/mkv-to-mp4/ /tools/video/mkv-to-mp4/ 301
|
||||
/tools/mkv-to-mp4 /tools/video/mkv-to-mp4/ 301
|
||||
/tools/avi-to-mp4/ /tools/video/avi-to-mp4/ 301
|
||||
/tools/avi-to-mp4 /tools/video/avi-to-mp4/ 301
|
||||
/tools/mp4-to-mov/ /tools/video/mp4-to-mov/ 301
|
||||
/tools/mp4-to-mov /tools/video/mp4-to-mov/ 301
|
||||
/tools/mp4-to-webm/ /tools/video/mp4-to-webm/ 301
|
||||
/tools/mp4-to-webm /tools/video/mp4-to-webm/ 301
|
||||
/tools/webm-to-mov/ /tools/video/webm-to-mov/ 301
|
||||
/tools/webm-to-mov /tools/video/webm-to-mov/ 301
|
||||
/tools/mkv-to-mov/ /tools/video/mkv-to-mov/ 301
|
||||
/tools/mkv-to-mov /tools/video/mkv-to-mov/ 301
|
||||
/tools/avi-to-mov/ /tools/video/avi-to-mov/ 301
|
||||
/tools/avi-to-mov /tools/video/avi-to-mov/ 301
|
||||
/tools/mp4-to-avi/ /tools/video/mp4-to-avi/ 301
|
||||
/tools/mp4-to-avi /tools/video/mp4-to-avi/ 301
|
||||
/tools/mov-to-avi/ /tools/video/mov-to-avi/ 301
|
||||
/tools/mov-to-avi /tools/video/mov-to-avi/ 301
|
||||
/tools/mkv-to-avi/ /tools/video/mkv-to-avi/ 301
|
||||
/tools/mkv-to-avi /tools/video/mkv-to-avi/ 301
|
||||
/tools/avi-to-mkv/ /tools/video/avi-to-mkv/ 301
|
||||
/tools/avi-to-mkv /tools/video/avi-to-mkv/ 301
|
||||
/tools/mp4-to-gif/ /tools/video/mp4-to-gif/ 301
|
||||
/tools/mp4-to-gif /tools/video/mp4-to-gif/ 301
|
||||
/tools/mov-to-gif/ /tools/video/mov-to-gif/ 301
|
||||
/tools/mov-to-gif /tools/video/mov-to-gif/ 301
|
||||
/tools/mkv-to-gif/ /tools/video/mkv-to-gif/ 301
|
||||
/tools/mkv-to-gif /tools/video/mkv-to-gif/ 301
|
||||
/tools/avi-to-gif/ /tools/video/avi-to-gif/ 301
|
||||
/tools/avi-to-gif /tools/video/avi-to-gif/ 301
|
||||
/tools/gif-to-mp4/ /tools/video/gif-to-mp4/ 301
|
||||
/tools/gif-to-mp4 /tools/video/gif-to-mp4/ 301
|
||||
/tools/gif-to-webm/ /tools/video/gif-to-webm/ 301
|
||||
/tools/gif-to-webm /tools/video/gif-to-webm/ 301
|
||||
/tools/gif-to-mov/ /tools/video/gif-to-mov/ 301
|
||||
/tools/gif-to-mov /tools/video/gif-to-mov/ 301
|
||||
/tools/mp4-to-mp3/ /tools/video/mp4-to-mp3/ 301
|
||||
/tools/mp4-to-mp3 /tools/video/mp4-to-mp3/ 301
|
||||
/tools/mov-to-mp3/ /tools/video/mov-to-mp3/ 301
|
||||
/tools/mov-to-mp3 /tools/video/mov-to-mp3/ 301
|
||||
/tools/mkv-to-mp3/ /tools/video/mkv-to-mp3/ 301
|
||||
/tools/mkv-to-mp3 /tools/video/mkv-to-mp3/ 301
|
||||
/tools/webm-to-mp3/ /tools/video/webm-to-mp3/ 301
|
||||
/tools/webm-to-mp3 /tools/video/webm-to-mp3/ 301
|
||||
/tools/avi-to-mp3/ /tools/video/avi-to-mp3/ 301
|
||||
/tools/avi-to-mp3 /tools/video/avi-to-mp3/ 301
|
||||
/tools/mp4-to-wav/ /tools/video/mp4-to-wav/ 301
|
||||
/tools/mp4-to-wav /tools/video/mp4-to-wav/ 301
|
||||
/tools/mov-to-wav/ /tools/video/mov-to-wav/ 301
|
||||
/tools/mov-to-wav /tools/video/mov-to-wav/ 301
|
||||
/tools/mp4-to-ogg/ /tools/video/mp4-to-ogg/ 301
|
||||
/tools/mp4-to-ogg /tools/video/mp4-to-ogg/ 301
|
||||
/tools/m4a-to-mp3/ /tools/audio/m4a-to-mp3/ 301
|
||||
/tools/m4a-to-mp3 /tools/audio/m4a-to-mp3/ 301
|
||||
/tools/m4a-to-wav/ /tools/audio/m4a-to-wav/ 301
|
||||
/tools/m4a-to-wav /tools/audio/m4a-to-wav/ 301
|
||||
/tools/aac-to-mp3/ /tools/audio/aac-to-mp3/ 301
|
||||
/tools/aac-to-mp3 /tools/audio/aac-to-mp3/ 301
|
||||
/tools/aac-to-wav/ /tools/audio/aac-to-wav/ 301
|
||||
/tools/aac-to-wav /tools/audio/aac-to-wav/ 301
|
||||
/tools/aac-to-flac/ /tools/audio/aac-to-flac/ 301
|
||||
/tools/aac-to-flac /tools/audio/aac-to-flac/ 301
|
||||
/tools/ogg-to-mp3/ /tools/audio/ogg-to-mp3/ 301
|
||||
/tools/ogg-to-mp3 /tools/audio/ogg-to-mp3/ 301
|
||||
/tools/ogg-to-wav/ /tools/audio/ogg-to-wav/ 301
|
||||
/tools/ogg-to-wav /tools/audio/ogg-to-wav/ 301
|
||||
/tools/wav-to-mp3/ /tools/audio/wav-to-mp3/ 301
|
||||
/tools/wav-to-mp3 /tools/audio/wav-to-mp3/ 301
|
||||
/tools/mp3-to-wav/ /tools/audio/mp3-to-wav/ 301
|
||||
/tools/mp3-to-wav /tools/audio/mp3-to-wav/ 301
|
||||
/tools/flac-to-mp3/ /tools/audio/flac-to-mp3/ 301
|
||||
/tools/flac-to-mp3 /tools/audio/flac-to-mp3/ 301
|
||||
/tools/excel-to-csv/ /tools/files/excel-to-csv/ 301
|
||||
/tools/excel-to-csv /tools/files/excel-to-csv/ 301
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# SnapOtter
|
||||
|
||||
> Open-source, self-hostable file processing suite with 157 tools across 5 modalities (image, video, audio, document, data). Single Docker container, no external services. Dual-licensed AGPLv3 / commercial.
|
||||
> Open-source, self-hostable file processing suite with 240 tools across 5 modalities (image, video, audio, document, data). Single Docker container, no external services. Dual-licensed AGPLv3 / commercial.
|
||||
|
||||
SnapOtter runs entirely on your own infrastructure. Files are processed locally with no data sent to external APIs. Deploy once with Docker and use it as much as you need. Supports GDPR, HIPAA, and CCPA compliance by architecture.
|
||||
|
||||
@@ -60,7 +60,7 @@ SAML SSO (Okta, Azure AD, Google Workspace, any OIDC), SCIM Provisioning, Multi-
|
||||
|
||||
- Self-hosted: all processing on your infrastructure, no cloud dependency
|
||||
- Privacy-first: files never leave your network, air-gapped capable
|
||||
- 157 tools across 5 modalities (image, video, audio, document, data)
|
||||
- 240 tools across 5 modalities (image, video, audio, document, data)
|
||||
- 15 local AI models, no external API calls
|
||||
- Batch processing with ZIP output
|
||||
- Pipeline automation: chain tools sequentially
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 317 KiB After Width: | Height: | Size: 319 KiB |
Reference in New Issue
Block a user