Files
branderson 9144395201 feat(streaming): log session lifecycles and why streamers fail
The session manager logs each session's creation, readiness time and
removal with its reason. A streamer that exits during startup now fails
the start at once instead of after 60 seconds, and the log carries its
exit code and last output; containers are no longer auto-removed, so
that output survives until teardown. A failed start reaches the app as
a 502.
2026-10-14 00:52:36 -07:00
..

Feature Documentation

This directory contains documentation for all major features in the Flashpoint Web application.

Features

  1. Authentication & Authorization - User registration, JWT tokens, session management, and RBAC
  2. Game Browsing & Filtering - Free-text search, multi-criteria filtering, sorting, and pagination
  3. Game Playing - Browser-based game playback with Ruffle emulator and game service proxy
  4. Play Session Tracking - Automatic gameplay monitoring with statistics and analytics
  5. Playlists & Favorites - Game organization through playlists and favorites with Flashpoint Launcher compatibility
  6. User Management - Administrator tools for managing user accounts, roles, and access control
  7. Role-Based Access Control - Fine-grained permission system with custom roles and flexible access control
  8. Activity Logging & Audit Trail - Comprehensive audit logging for security monitoring and troubleshooting
  9. System Settings - Centralized configuration management with validation and caching
  10. Date & Time Formatting - Consistent date/time formatting and localization across the application
  11. Maintenance Mode - Temporarily restrict access during system updates while allowing admin access
  12. Discovery Portal - Arcade portal layout, color schemes, discovery homepage and mature content filtering
  13. Streaming - Java, Shockwave and original Flash Player games streamed from the server, one container per player
  14. Proxy Sign-In - Sign users in through Authentik, Authelia, oauth2-proxy and other forward-auth proxies
  15. Game Saves - Saves kept on the player's account, with backups to restore

Quick Reference

All Permissions

Permission Resource Action Description
games.read games read View and browse games
games.play games play Play games in browser
games.download games download Download game files
playlists.read playlists read View playlists
playlists.create playlists create Create new playlists
playlists.update playlists update Update existing playlists
playlists.delete playlists delete Delete playlists
users.read users read View user accounts
users.create users create Create new user accounts
users.update users update Update user accounts
users.delete users delete Delete user accounts
roles.read roles read View roles and permissions
roles.create roles create Create new roles
roles.update roles update Update roles and permissions
roles.delete roles delete Delete roles
settings.read settings read View system settings
settings.update settings update Update system settings
activities.read activities read View activity logs

Total: 18 permissions across 6 resources

Database Tables

User Database (user.db):

  • users, roles, permissions, role_permissions, refresh_tokens, login_attempts
  • system_settings, user_settings, user_game_plays, user_game_stats, user_stats, activity_logs

Flashpoint Database (flashpoint.sqlite - read-only):

  • game, platform, tag, game_tags_tag, playlist, playlist_game

Default Roles

Role Priority Permissions
admin 100 All 18 permissions
user 50 games., playlists. (10 total)
guest 0 games.read, playlists.read (2 total)