A very light-weight pastebin implementation in Rust
https://paste.blakerain.com/
.gitea/workflows | ||
media | ||
migrations | ||
src | ||
static | ||
style | ||
templates | ||
.dockerignore | ||
.gitignore | ||
build.rs | ||
Cargo.toml | ||
Dockerfile | ||
LICENSE | ||
package.json | ||
postcss.config.js | ||
README.md | ||
tailwind.config.js |
cement - a super light-weight pastebin
![Screenshot of Cement displaying a paste](/BlakeRain/cement/media/branch/main/media/masked-screenshot.png)
Cement is a very simple pastebin-like web application written in Rust. It provides a very minimal interface intended to be as intrusion-free as possible. There's no admin or login required.
- Written in Rust using the Poem web framework
- Stores pastes in an SQLite database
- Styled using Tailwind CSS
- Includes support for syntax highlighting via highlight.js
- Builds to a tiny Docker image (under 6 MB)
Running in Docker
A Docker container is provided at blakerain/cement. This container will run Cement on port 3000.
docker run --name my-cement -d blakerain/cement
You can specify the SQLite database using the DB
environment variable. For example, if you have mounted a volume under /data
into which the database should be stored as cement.db
, you can set the DB
environment variable to sqlite:///data/cement.db
:
docker run -d \
--name my-cement \
-e DB=sqlite:///data/cement.db \
-v cement_data:/data