Skip to content

Feature Request: Guest Access / Lazy Authentication for Dashboard and Browsing #389

Description

@amina69

🎯 Objective

Allow users to fully browse the website and view all dashboards as an unauthenticated guest. Users should only be prompted to Sign Up or Log In when they attempt to perform an interactive action (e.g., saving data, creating configurations, posting comments, or accessing private settings).


👤 User Story

As a prospective or casual visitor,
I want to explore the website and view the public dashboards without creating an account immediately,
So that I can understand the value of the platform before committing to a signup process.


📋 Acceptance Criteria

1. Public Browsing (Guest Mode)

  • Unauthenticated users can access the homepage and navigate through all main dashboard views.
  • Dashboard metrics, charts, and data visualizations should render fully using public or placeholder/demo data.
  • A subtle, non-intrusive banner or banner message can be displayed suggesting users login to save their progress (optional, up for design review).

2. Interactive Action Gates (Auth Wall)

  • If a guest clicks an interactive button (e.g., “Save”, “Create New”, “Export”, “Submit”), the action is intercepted.
  • Instead of performing the action, a modal or redirect should prompt the user to Sign Up or Log In.
  • Crucial: After a successful authentication, the user should be automatically redirected back to the exact dashboard page they were viewing, ideally with their pending action preserved if technically feasible.

3. State Management

  • Ensure API endpoints supporting the dashboard browsing do not require a bearer token or session cookie for public data reads.

🛠️ Proposed Technical Implementation Plan

  1. Frontend Routing: Update router guards to allow guest access to dashboard paths (remove mandatory authentication middleware checks from browsing routes).
  2. UI Interceptors: Wrap interactive components in an authentication check wrapper or trigger an auth modal via a global state manager (e.g., Redux, Context, Pinia) when an unauthorized interaction occurs.
  3. Backend Support: Ensure public GET requests to dashboard analytics bypass auth middleware on the server side.

🎨 Design & UX Notes

  • The login prompt shouldn't feel like an aggressive roadblock; it should clearly explain why they need an account at that specific moment (e.g., "Sign up to save this custom dashboard configuration").

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave program

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions