feat: initial Minipaste

- MinIO-backed paste storage with 8-char base62 IDs
- Paste expiry (1m, 1h, 1d, 1w, never) stored in object metadata
- Raw plain-text endpoint at /raw/:id
- Syntax highlighting in editor and paste view via highlight.js
- In-editor highlight overlay with live language switching
- Download button with correct file extension per language
- Auto-redirect to paste after creation
This commit is contained in:
callum5892
2026-03-10 22:41:22 +00:00
parent 51c03e5f42
commit 933d81a77f
15 changed files with 2278 additions and 158 deletions

9
.env.example Normal file
View File

@@ -0,0 +1,9 @@
PORT=3000
# MinIO connection
MINIO_ENDPOINT=localhost
MINIO_PORT=9000
MINIO_USE_SSL=false
MINIO_ACCESS_KEY=minioadmin
MINIO_SECRET_KEY=minioadmin
MINIO_BUCKET=pastes