Skip to content

Commit bb8fd67

Browse files
authored
Update README.md
1 parent acc5de8 commit bb8fd67

File tree

1 file changed

+3
-17
lines changed

1 file changed

+3
-17
lines changed

README.md

Lines changed: 3 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,9 @@ ADVRider's built-in notifications only email you once after your last visit. Thi
1212

1313
Subscribe to any ADVRider thread and get emails when new posts appear.
1414

15-
**Respectful polling:** Adaptive intervals from 5 minutes (active threads) to 4 hours (quiet threads) using exponential backoff: `5min × 2^(hours_since_post / 3)`. Polling cycles are triggered every 10 minutes via Cloud Scheduler, making the real-world minimum check interval ~10 minutes for active threads. Each thread is scraped once per cycle regardless of subscriber count, minimizing server load.
16-
15+
**Respectful polling:** Adaptive intervals from ~10 minutes (active threads) to 4 hours using exponential backoff. Minimum poll time is defined as `5min × 2^(hours_since_post / 3)`, with a 10-minute polling loop; shared fetch for all subscribers to minimize load.
1716
**User limits:** Maximum 20 threads per email address. Notifications batch up to 10 posts to prevent spam.
18-
19-
**Security:** Rate limited to 5 requests/second per IP. Token-based subscription management. Thread verification before subscription. Email content sanitized to prevent XSS and phishing.
20-
17+
**Security:** Token-based subscription management. mail content sanitized to prevent XSS and phishing.
2118
**Email quality:** Dark mode support, WCAG AA compliant, clickable post anchors linking directly to specific posts.
2219

2320
## Running locally
@@ -26,18 +23,7 @@ Subscribe to any ADVRider thread and get emails when new posts appear.
2623
go run .
2724
```
2825

29-
Visit http://localhost:8080 and subscribe to a thread.
30-
31-
## Architecture
32-
33-
```
34-
/ Subscribe form
35-
/subscribe Create subscription (verifies thread exists)
36-
/manage?token=... View/delete subscriptions
37-
/pollz Trigger poll (rate limited)
38-
```
39-
40-
Storage: Local filesystem (`./data`) or GCS. Email via Brevo API (auto-mocks when `BREVO_API_KEY` not set).
26+
Server will be available at http://localhost:8080
4127

4228
## License
4329

0 commit comments

Comments
 (0)