diff --git a/README.md b/README.md
index ff79986..6c36460 100644
--- a/README.md
+++ b/README.md
@@ -2,6 +2,8 @@
Simple **live collaboration notepad** with websockets and FastAPI.
+[Issue tracker](https://git.uphillsecurity.com/cf7/aukpad/issues) | `Libera Chat #aukpad`
+
- Status: Beta - expect minor changes.
- Instance/Demo: [aukpad.com](https://aufkpad.com/)
- Inspired by:
@@ -22,10 +24,7 @@ The goal is to keep it simple! For feature-rich solutions are [hedgedoc](https:/
- `[pad_id]/raw` HTTP endpoint
**Ideas**:
-- read-only views
-- password protection
-- E2EE
-- caching/ auto-save to localstorage in browser / offline use
+[Check out the open feature requests](https://git.uphillsecurity.com/cf7/aukpad/issues?q=&type=all&sort=&state=open&labels=12&milestone=0&project=0&assignee=0&poster=0&archived=false)
**Not planned**:
- accounts / RBAC
@@ -46,6 +45,21 @@ ip -br a | curl -X POST https://aukpad.com --data-binary @- # command output
## Installation
+### Environment Variables
+
+The following environment variables can be configured:
+
+| Variable | Default | Description |
+|----------|---------|-------------|
+| `USE_VALKEY` | `false` | Enable Valkey/Redis caching. Set to `true` to enable |
+| `VALKEY_URL` | `redis://localhost:6379/0` | Redis/Valkey connection URL |
+| `MAX_TEXT_SIZE` | `5` | Maximum text size in MB (5MB default) |
+| `MAX_CONNECTIONS_PER_IP` | `10` | Maximum concurrent connections per IP address |
+| `RETENTION_HOURS` | `48` | How long to retain pads in hours (48 hours default) |
+| `DESCRIPTION` | `powered by aukpad.com` | Instance description shown on info page |
+
+### Running
+
WORK IN PROGRESS
---
@@ -56,6 +70,12 @@ For security concerns or reports, please contact via `hello a t uphillsecurity d
---
+## Notes
+
+- [Github Mirror available](https://github.com/CaffeineFueled1/aukpad)
+
+---
+
## License
**Apache License**
diff --git a/app.py b/app.py
index 4f27ab3..e28fdd9 100644
--- a/app.py
+++ b/app.py
@@ -11,9 +11,10 @@ application = app # alias if you prefer "application"
# Environment variables
USE_VALKEY = os.getenv("USE_VALKEY", "false").lower() == "true"
VALKEY_URL = os.getenv("VALKEY_URL", "redis://localhost:6379/0")
-MAX_TEXT_SIZE = int(os.getenv("MAX_TEXT_SIZE", "1048576")) # 1MB default
+MAX_TEXT_SIZE = int(os.getenv("MAX_TEXT_SIZE", "5")) * 1024 * 1024 # 5MB default
MAX_CONNECTIONS_PER_IP = int(os.getenv("MAX_CONNECTIONS_PER_IP", "10"))
RETENTION_HOURS = int(os.getenv("RETENTION_HOURS", "48")) # Default 48 hours
+DESCRIPTION = os.getenv("DESCRIPTION", "powered by aukpad.com")
# Valkey/Redis client (initialized later if enabled)
redis_client = None
@@ -128,7 +129,7 @@ HTML = """
max-width: 1000px; margin: 0 auto; padding: 1rem; display: flex; flex-direction: column; height: 100vh; box-sizing: border-box; }
header { display:flex; justify-content:space-between; align-items:center; margin-bottom: .5rem; flex-shrink: 0; }
a,button { padding:.35rem .6rem; text-decoration:none; border:1px solid #ddd; border-radius:8px; background:#fff; }
- #newpad { background:#000; color:#fff; border:1px solid #000; }
+ #newpad { background:#000; color:#fff; border:1px solid #000; font-weight:bold; }
#status { font-size:.9rem; opacity:.7; margin-left:.5rem; }
#status::before { content: "●"; margin-right: .3rem; color: #ef4444; }
#status.connected::before { color: #22c55e; }
@@ -140,6 +141,7 @@ HTML = """
#t { padding:.5rem .75rem; width:100%; height: 100%; resize: none; border:0; outline:0;
overflow:auto; white-space: pre; }
#newpad { margin-left:.5rem; }
+ #info { margin-left:.5rem; color: black; font-size: 0.8rem; }
pre {margin: 0; }