Stanislav N. aka pztrn
25489dc103
Some checks failed
continuous-integration/drone/push Build is failing
|
||
---|---|---|
assets | ||
cmd/fastpastebin | ||
docker | ||
domains | ||
examples | ||
internal | ||
systemd | ||
.drone.yml | ||
.gitignore | ||
.gitlab-ci.yml | ||
.golangci.yml | ||
.markdownlint.json | ||
builder.sh | ||
CHANGELOG.md | ||
docker-compose.yml | ||
Dockerfile | ||
go.mod | ||
go.sum | ||
LICENSE | ||
README.md |
Fast Pastebin
Easy-to-use-and-install pastebin software written in Go. No bells or whistles, no websockets and even NO JAVASCRIPT!
Please, use my gitea for bug reporting. All other places are mirrors!
Current functionality
- Create and view public and private pastes.
- Syntax highlighting.
- Pastes expiration.
- Passwords for pastes.
- Multiple storage backends. Currently:
flatfiles
,mysql
andpostgresql
.
Caveats
- No links at lines numbers. See this Chroma bug
Installation and updating
Just issue:
CGO_ENABLED=0 go install go.dev.pztrn.name/fastpastebin/cmd/fastpastebin@latest
This command can be used to update Fast Paste Bin.
Configuration
Take a look at example configuration file which contains all supported options and their descriptions.
Configuration file position is irrelevant, there is no hardcoded paths where Fast Paste Bin looking for it's configuration. Use -config
CLI parameter or FASTPASTEBIN_CONFIG
environment variable to specify path.
Developing
Use linters, formatters, etc. VSCode with Go plugin is recommended for developing as it will perform most of linting-formatting actions automagically.
Also, Sublime Text with LSP-gopls will also work just fine.
Try to follow Go's code review comments with few exceptions:
- We're not forcing any limits on line length for code, only for comments, they should be 72-76 chars long.
ToDo
This is a ToDo list which isn't sorted by any parameter at all. Just a list of tasks you can help with.
- User CP.
- Files uploading.
- Passwords for files.
- Pastes forking and revisioning (like git or github gists).
- Possibility to copy-paste-edit WYSIWYG content.
- CLI client for pastes and files uploading.