pb-go

module
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 7, 2020 License: AGPL-3.0

README

pb-go

Logo

Yet Another PasteBin implemented in Golang. The pb-go team have no affiliate with ptpb/pb.

GitHub stars Go Report Card Go CI Build Status GitHub GitHub last commit GitHub All Releases Codacy Badge Codacy coverage

We use Sentry.io for bug tracking and log collection which was GDPR-complaint, their privacy policy can be found at: here

Our Documentation is here.

Discussion

We need developer and help, for feature request and discussion, please go to our Telegram Group.

Bug Report please attach log and finish the whole GitHub Issue template. Thanks.

Prerequisites

  • MongoDB
  • Reverse Proxy with HTTPS and Rate-Limit Support (Recommend: Traefik, Caddy)
  • A Linux Server (If you need Windows version, compile by yourself.)

Note: Since we are offering public services, we don't want to implement any rate-limit on application side. You must apply a reverse proxy or something else do that. You must ensure your proxy is properly configured to send X-Real-IP header. Your data is encrypted and finally stored on our server using Chacha20 algorithm.

To-Do list (features)

  • | Content detection, only allow pure texts.
  • | Expiring feature done in MongoDB. Support Read-After-Burn.
  • | Private Share optionally, Sharing password using BLAKE2b stored.
  • | Rate-limit to avoid abusing. (SHOULD BE DONE IN REVERSE PROXY SIDE)
  • | ReCaptcha v2 support to prevent from a large scale abusing.
  • | Code Syntax Highlighting.
  • | Shortlink using nano-id.
  • | Pure CLI. (You could also use curl instead)
  • | Web page upload.

Usage

Current version: v1.0.2

Client

Download pb-cli From release assets, use --help to get usage.

We have an example config named pbcli.example.yaml in our root folder to simplify your typing, Copy it to ~/.pbcli.yaml, and change it according to the document. This configuration file is OPTIONAL, not REQUIRED.

Server

Download pb-go From release assets, use --help to get usage.

We have an example config named config.example.yaml in our root folder, rename to config.yaml, , and change it according to the document, finally put it in the same folder of the binary.

Compile

make build

License

pb-go Copyright (C) 2020 kmahyyg

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL