AN OPEN SOURCE PASTEBIN
Modern Paste is a contemporary Pastebin for self-hosted installations. This Python-powered web application features functionality standard for a code/text sharing application, including user account integration, syntax highlighting, security restrictions and visibility control, and a RESTful API for integration into existing applications.
Modern Paste is also easy to install and highly configurable. Current instructions exist for Apache, though the application can be deployed on any WSGI-aware server.
- Modern user interface with a consistent design language
- Syntax highlighting for all languages supported by CodeMirror
- Ability to set paste expiration dates
- Ability to password-protect pastes
- Full user account functionality
- Associate new pastes with a user account
- View, modify, or delete pastes posted with a user account
- Directly query the Modern Paste API with the account's API key/authtoken
- Public archive of pastes, sorted reverse chronologically or by popularity
- RESTful API for externally creating, reading, and managing pastes
- Ability to enforce security restrictions: can configure that only authenticated users can post pastes (ideal for private, non-public-facing installations)
- Ability to encrypt the front-facing-display of paste IDs (e.g. so that /paste/1 might display as /paste/9~AEygplxfCPHW4eJctbjMnRi-rYnlYzizqToCmG3BY=)
CUSTOMIZATION AND CONFIGURATION
Your deployment of Modern Paste can be configured to meet your specific usage scenario. Deploying for internal, private use? Require users be logged in to post new pastes and disable new user registration. Want to add an additional layer of security for publicly visible paste IDs? Enable paste ID encryption.
Modern Paste's app configuration options can be modified in app/config.py. Effecting config changes is simple: just service apache2 reload.
Contributions are always welcome! Please fork the repository and submit pull requests. Full details on how to contribute are in the repository's README.