Evaluate RePlaya for session replay diagnostics #66

Open
opened 2026-06-03 20:12:47 -07:00 by pyr0ball · 0 comments
Owner

Summary

RePlaya (https://github.com/s2-streamstore/replaya, MIT) is a self-hosted browser session replay tool built on rrweb + S2 streams. Captures user sessions with live tailing, input masking on by default.

Why Turnstone

Session replay of the Turnstone diagnostic UI captures the full user context when something breaks: which log patterns were active, what filters were set, what the user clicked before hitting an error. This is often the missing piece in a bug report.

Use cases:

  • Internal: replay CF team sessions to reproduce Turnstone bugs
  • Future: opt-in "send diagnostic session" feature for users reporting issues

Key dependency: S2

RePlaya uses S2 stream store as its backend. Investigate whether S2 is self-hostable before adopting. If S2 is cloud-only, this conflicts with CF's self-hosted-first principle and a different storage adapter would be needed.

Architecture note

"Stream as entire backend" pattern: each session = one S2 stream, no separate DB/message bus/object store/search index. Worth understanding for CF's own streaming architecture decisions even if RePlaya itself isn't adopted.

Privacy

Input masking on by default — passwords and sensitive fields never captured. Aligns with CF privacy principles.

References

## Summary RePlaya (https://github.com/s2-streamstore/replaya, MIT) is a self-hosted browser session replay tool built on rrweb + S2 streams. Captures user sessions with live tailing, input masking on by default. ## Why Turnstone Session replay of the Turnstone diagnostic UI captures the full user context when something breaks: which log patterns were active, what filters were set, what the user clicked before hitting an error. This is often the missing piece in a bug report. Use cases: - Internal: replay CF team sessions to reproduce Turnstone bugs - Future: opt-in "send diagnostic session" feature for users reporting issues ## Key dependency: S2 RePlaya uses S2 stream store as its backend. **Investigate whether S2 is self-hostable before adopting.** If S2 is cloud-only, this conflicts with CF's self-hosted-first principle and a different storage adapter would be needed. ## Architecture note "Stream as entire backend" pattern: each session = one S2 stream, no separate DB/message bus/object store/search index. Worth understanding for CF's own streaming architecture decisions even if RePlaya itself isn't adopted. ## Privacy Input masking on by default — passwords and sensitive fields never captured. Aligns with CF privacy principles. ## References - https://github.com/s2-streamstore/replaya - License: MIT - Stars: 67
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Circuit-Forge/turnstone#66
No description provided.