Самостоятельно размещаемый веб-сервис для обмена текстом и файлами с открытым исходным кодом, собранный в один бинарный файл на Rust; поддерживает шифрование и сокращение URL.
matze/wastebin
Минималистичный pastebin для собственного хостинга на Rust, axum и SQLite: поддерживает шифрование, срок действия и удаление после первого просмотра.
Open source альтернатива:Pastebin
- Звёзды
- 885
- Форки
- 68
- Открытые issues
- 28
- Последний коммит
- 18 дней назад
Что это?
wastebin — pastebin для собственного хостинга, предназначенный для обмена фрагментами текста, логами и кодом через браузер или HTTP API. Он построен на axum, использует базу данных SQLite и поставляется в виде одного бинарного файла, занимая мало памяти. Пасты сжимаются с помощью zstd, а подсветка синтаксиса поддерживает более 170 языков благодаря syntect.
Пасты можно шифровать с помощью ChaCha20Poly1305, используя пароли, хешированные argon2, а также задавать им срок действия, удалять после первого просмотра или удалять от имени анонимного создателя. Markdown-пасты можно отображать в HTML с таблицами, списками задач и блоками admonition в стиле GitHub, а произвольный HTML очищается с помощью ammonia. Интерфейс предлагает девять цветовых тем в светлом и тёмном режимах, а также QR-код для открытия пасты на телефоне.
В проекте нет учётных записей пользователей, административных функций и загрузки произвольных файлов. В README рекомендуется размещать сервис за reverse proxy с ограничением частоты запросов, если он доступен из интернета. Настройка выполняется через переменные окружения, а входящая в комплект утилита wastebin-ctl позволяет просматривать список записей, очищать базу или удалять записи напрямую из неё.
Ключевые возможности
- 01Бэкенд на axum и SQLite, распространяемый в виде одного бинарного файла
- 02Сжатие с помощью zstd и подсветка синтаксиса для более чем 170 языков
- 03Отображение Markdown с таблицами, списками задач и блоками admonition
- 04Шифрование ChaCha20Poly1305 с паролями, хешированными argon2
- 05Срок действия, удаление после первого просмотра и удаление создателем
- 06Девять цветовых тем в светлом и тёмном режимах, а также просмотр QR-кода
Сценарии использования
- Обмен фрагментами кода и логами с коллегами на частном сервере
- Публикация вывода команд из терминала с помощью curl или shell-функции
- Отправка временных зашифрованных заметок, срок действия которых истекает или которые удаляются после первого просмотра
- Развёртывание небольшого внутреннего pastebin с помощью Docker или docker-compose
Быстрый старт
- 1
Установите toolchain Rust 2024 (Rust 1.85 или новее) с помощью rustup
- 2
Соберите и запустите сервер в режиме release с помощью cargo
cargo run --release
Что важно знать
- В приложении нет аутентификации пользователей и функций администратора; в README не рекомендуется открывать его для доступа из интернета без ограничения частоты запросов или обратного прокси.
- По умолчанию база данных хранится в памяти, поэтому после перезапуска вставки будут потеряны, если не задана переменная WASTEBIN_DATABASE_PATH.
В подборках
Темы
Частые вопросы
- Что такое wastebin?
- Минималистичный pastebin для собственного хостинга на Rust, axum и SQLite: поддерживает шифрование, срок действия и удаление после первого просмотра. wastebin — pastebin для собственного хостинга, предназначенный для обмена фрагментами текста, логами и кодом через браузер или HTTP API. Он построен на axum, использует базу данных SQLite и поставляется в виде одного бинарного файла, занимая мало памяти. Пасты сжимаются с помощью zstd, а подсветка синтаксиса поддерживает более 170 языков благодаря syntect.
- wastebin можно использовать бесплатно? Какая у него лицензия?
- wastebin распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- wastebin всё ещё поддерживается?
- Активно поддерживается. Последний коммит в wastebin — 20 окт. 2026 г..
- Для чего можно использовать wastebin?
- Обмен фрагментами кода и логами с коллегами на частном сервере Публикация вывода команд из терминала с помощью curl или shell-функции Отправка временных зашифрованных заметок, срок действия которых истекает или которые удаляются после первого просмотра Развёртывание небольшого внутреннего pastebin с помощью Docker или docker-compose
- Как установить wastebin?
- Установите toolchain Rust 2024 (Rust 1.85 или новее) с помощью rustup Соберите и запустите сервер в режиме release с помощью cargo: cargo run --release
- Где скачать wastebin?
- Исходный код и инструкции по установке — на GitHub: https://github.com/matze/wastebin
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Минималистичный pastebin для самостоятельного размещения: шифрует записи в браузере, поэтому сервер не видит их в открытом виде.
Персональный сайт, который можно разместить на собственном сервере: заметки, события, проекты, коллекция в формате книжной полки и журнал важных вех; React 19 и Rust (axum + SQLite).
Самостоятельно размещаемый сервис для обмена файлами, публикации текстовых фрагментов и сокращения URL с паролями для отдельных материалов, сроком действия ссылок и веб-панелью администратора.
Самостоятельно размещаемый pastebin со сквозным шифрованием, историей публикаций, удалением после просмотра и передачей между устройствами.
Pastebin с самоуничтожающимися заметками и сквозным шифрованием: заметки шифруются в браузере с помощью AES-256-GCM и исчезают после первого прочтения или через 24 часа.