Compare commits
5
Commits
53e7a97c44
..
v0.4.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
522e016a29 | ||
|
|
cf6e52bcc5 | ||
|
|
3a8f528693 | ||
|
|
ed22579bed | ||
|
|
7ee3ffbfc9 |
@@ -1,7 +1,7 @@
|
||||
# Palette
|
||||
|
||||
Palette is a fast, self-hosted pastebin. One Go binary, a SQLite database, and
|
||||
a web UI for sharing text and small files
|
||||
a web UI for sharing text and small files.
|
||||
|
||||
> [!NOTE]
|
||||
> <table><tr><td>
|
||||
@@ -10,22 +10,27 @@ a web UI for sharing text and small files
|
||||
|
||||
## Features
|
||||
|
||||
- Multiple files in one paste
|
||||
- Text pastes and cans (multiple items in one share)
|
||||
- File attachments (one file per paste, up to 25 MB)
|
||||
- Password protected pastes
|
||||
- Expir after a specified time
|
||||
- Expire after a specified time
|
||||
- Burn after a number of views
|
||||
- Custom URLs
|
||||
- Syntax highlighting with language auto-detection (go-enry)
|
||||
- Local cookie based submission history
|
||||
- Cookie based settings
|
||||
- Themes!
|
||||
- Public paste listing with search, sort and pagination
|
||||
- Cookie based saved pastes and settings
|
||||
- Five base themes (midnight, smooth, pastel-lavender, pastel-peach, pastel-cloud), each with a dark and light variant
|
||||
- Dark mode toggle in the topbar and settings, with a configurable default
|
||||
|
||||
## Screenshots
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
|  |  |
|
||||
|  |  |
|
||||
|  |  |
|
||||
|  |  |
|
||||
|  |  |
|
||||
|
||||
Mobile previews (375x812): [paste view](https://git.archfox.org/poslop/palette/wiki/raw/palette-previews%2Fmobile-paste-midnight-dark.png), [public list](https://git.archfox.org/poslop/palette/wiki/raw/palette-previews%2Fmobile-public.png), [settings](https://git.archfox.org/poslop/palette/wiki/raw/palette-previews%2Fmobile-settings.png).
|
||||
|
||||
## Get Started
|
||||
|
||||
@@ -64,9 +69,10 @@ go build -o palette ./cmd/palette
|
||||
| `PALETTE_MAX_ITEM` | `26214400` | Max can item size in bytes (25 MB) |
|
||||
| `PALETTE_ADMIN_KEY` | generated | Admin key; if unset a 32-char hex key is generated and persisted to `<db-dir>/admin-key` (0600) |
|
||||
| `PALETTE_DEFAULT_DARK` | dark on | Default dark mode for new visitors. Set `false`, `0`, or `off` to default to light mode. Visitors who toggle dark mode keep their choice in their browser. |
|
||||
| `PALETTE_UNLOCK_SECRET` | random per start | HMAC secret for password-unlock cookies. Set a fixed value to keep unlock sessions across restarts or across replicas. |
|
||||
|
||||
An `/admin` page exists for runtime settings, protected by a key set at
|
||||
install (`PALETTE_ADMIN_KEY` env var) and resettable locally — see
|
||||
install (`PALETTE_ADMIN_KEY` env var) and resettable locally. See
|
||||
[API](https://git.archfox.org/poslop/palette/wiki/API) and the [design docs](https://git.archfox.org/poslop/palette/wiki/Home) in the wiki for details.
|
||||
|
||||
## API
|
||||
|
||||
@@ -13,6 +13,7 @@ var reservedSlugs = map[string]bool{
|
||||
"api": true, "raw": true, "can": true, "cans": true, "public": true,
|
||||
"history": true, "static": true, "assets": true, "favicon.ico": true,
|
||||
"new": true, "login": true, "logout": true, "admin": true, "settings": true,
|
||||
"mine": true, "unlock": true, "guess": true, "f": true,
|
||||
}
|
||||
|
||||
var ErrInvalidSlug = errors.New("custom slug must be 1-64 chars: letters, digits, dash, underscore; must start with letter or digit")
|
||||
|
||||
Reference in New Issue
Block a user