docs: update README
This commit is contained in:
49
README.md
49
README.md
@@ -1,3 +1,50 @@
|
||||
# spasteg
|
||||
|
||||
A secure, self-hostable "burn after reading" paste service written in gleam
|
||||
A secure, self-hostable "burn after reading" paste service with ephemeral storage written in [Gleam](https://gleam.run).
|
||||
|
||||
## Features
|
||||
|
||||
- **Ephemeral pastes** — Content is deleted immediately after first view
|
||||
- **No persistence** — All data stored in-memory only (restarts clear everything)
|
||||
- **No accounts** — Zero-friction sharing without registration
|
||||
- **Self-hosted** — Run your own instance with full control
|
||||
- **Fast & lightweight** — Built on the BEAM VM for reliability and performance
|
||||
- **Type-safe** — Written in Gleam, a type-safe functional language
|
||||
|
||||
## Quick Start
|
||||
|
||||
```bash
|
||||
# Clone and build
|
||||
git clone https://git.kharec.info/Kharec/spasteg.git
|
||||
cd spasteg
|
||||
gleam run
|
||||
```
|
||||
|
||||
The server starts on `http://localhost:3000`.
|
||||
|
||||
## Usage
|
||||
|
||||
1. Visit `http://localhost:3000`
|
||||
2. Enter your text in the form
|
||||
3. Click "Create Paste"
|
||||
4. Share the generated URL
|
||||
5. The paste auto-destructs after first access
|
||||
|
||||
## Architecture
|
||||
|
||||
- **Web framework**: Wisp (Gleam's web framework)
|
||||
- **HTTP server**: Mist (HTTP/1.1 & HTTP/2)
|
||||
- **HTML rendering**: Lustre (type-safe, declarative HTML generation)
|
||||
- **Storage**: In-memory OTP actor (no disk persistence)
|
||||
- **Key generation**: Cryptographically random 16-character keys
|
||||
|
||||
## Security Notes
|
||||
|
||||
- Pastes are stored **unencrypted** in server memory
|
||||
- Data is **never written to disk**
|
||||
- All data is lost on server restart
|
||||
- Intended for ephemeral sharing only — do not store sensitive data
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the GNU General Public License v3.0 or later (GPLv3+). See the [LICENSE](LICENSE) file for details.
|
||||
|
||||
Reference in New Issue
Block a user