shadow-guideflow

byKartik Pawar

Build a web application called GuideFlow — an interactive guide and product demo tool for SaaS teams that lets non-technical users turn any workflow they perform in a browser into a shareable, step-by-step interactive guide, how-to article, or product demo, without writing code or editing video. Core problem: SaaS companies and internal teams waste hours writing static screenshots-and-text documentation that goes stale the moment the UI changes, and customers/new hires still struggle to follow along because text instructions don't match what they see on screen. GuideFlow solves this by capturing real user actions (clicks, page navigation, form fills) directly from the browser and auto-generating an interactive, click-through guide with annotated screenshots, hotspots, and optional voiceover/text callouts — turning a 5-minute task into a 2-minute guide creation. Target users: Customer support and success teams who need to answer "how do I..." questions once and reuse the answer forever; SaaS onboarding/product teams building self-serve product tours and demo experiences for prospects; internal ops/HR teams documenting SOPs for new hires. They sign up because it replaces manually written help docs and Loom-style videos with something searchable, editable, and embeddable. Build the following MVP feature set as functional requirements: Users can install a browser extension or use an in-app recorder to capture a sequence of screens/clicks on any website, which automatically generates a draft guide with one step per captured screen and an auto-cropped screenshot. Users can edit a generated guide in a step editor: reorder steps, edit step titles/descriptions, add text callouts, arrows, and blur/redact boxes over sensitive info on each screenshot. Users can publish a guide and get a shareable public link, plus an embeddable iframe/JS snippet to drop the guide into their own website or help center. Users can organize guides into folders/collections and control each guide's visibility (private, unlisted link, public). Users can view basic analytics per guide: total views, completion rate, and drop-off step. Users on the free plan are capped at 5 published guides; users can upgrade to a paid plan for unlimited guides via a hosted checkout. Users can invite teammates to a shared workspace so guides are co-owned and editable by the team. Viewers (no login required) can click through a published guide step by step in a clean, distraction-free viewer with a progress indicator. User flow: A visitor lands on the marketing homepage, signs up with email or Google OAuth, and is dropped into an empty workspace dashboard. They click "New Guide," either upload a sequence of screenshots or use the recorder to auto-capture steps while performing the workflow in another tab, then land in the step editor where the captured steps appear as an ordered list with screenshots. They edit titles, add callouts/blur boxes, reorder steps, and click "Publish." Publishing generates a public URL and an embed snippet, both shown on a success screen with copy buttons. The guide now appears in the dashboard's guide list with a view count. The user can return anytime to edit, duplicate, archive, or check analytics for any guide. A separate anonymous viewer opens the public link and clicks "Next"/"Back" through the guide's steps without needing an account. Data model: User: id, name, email, password hash (or OAuth id/provider), avatar_url, created_at, current workspace_id. Workspace: id, name, owner_user_id, plan (free/paid), created_at. Has many Users through WorkspaceMember, has many Guides and Folders. WorkspaceMember: id, workspace_id, user_id, role (admin/editor/viewer), invited_at, joined_at. Folder: id, workspace_id, name, parent_folder_id (nullable, for nesting), created_at. Guide: id, workspace_id, folder_id (nullable), title, description, status (draft/published/archived), visibility (private/unlisted/public), share_slug (unique), created_by_user_id, created_at, updated_at. Step: id, guide_id, order_index, title, description, screenshot_url, callouts (JSON array of {type: text/arrow/blur, x, y, width, height, content}), created_at. GuideView: id, guide_id, viewer_session_id, started_at, last_step_reached, completed_at (nullable) — used for analytics. Subscription: id, workspace_id, stripe_customer_id, stripe_subscription_id, plan, status, current_period_end. Screens/pages needed: Marketing landing page (value prop, pricing, CTA to sign up) — public. Sign up / log in pages (email+password and Google OAuth) — public. Workspace dashboard: list of folders and guides with search, filter by status, "New Guide" button, plan/usage indicator (e.g. "3/5 free guides used"). Guide recorder/upload flow: a modal or page to start a recording session or upload screenshots. Step editor: left panel = ordered step list (drag to reorder), main canvas = selected step's screenshot with callout tools, right panel = step title/description fields. Publish success screen: public link, embed code, visibility toggle. Guide analytics page: views over time chart, completion rate, per-step drop-off. Public guide viewer: full-screen step-through experience, no navigation chrome, "Made with GuideFlow" footer badge. Workspace settings: team members list with invite-by-email and role management, billing/plan page with upgrade button. Account settings: profile info, password/connected accounts. Auth & permissions: Require login for all dashboard/editor/analytics/settings screens; the public guide viewer requires no login. Support email/password and Google OAuth. Model roles at the workspace level — admin (manage billing, members, all guides), editor (create/edit guides), viewer (read-only access to guides and analytics) — and support multiple users per workspace with invite-by-email flows. A user can belong to multiple workspaces and switch between them. Integrations: Stripe for subscription billing and checkout (free vs. paid plan, enforce the 5-guide cap for free plan via a server-side check before allowing publish), an email service (e.g. Resend/SendGrid) for signup verification and team invite emails, and Google OAuth for social login. Image storage for screenshots should use a cloud object store (e.g. S3-compatible bucket) with generated URLs referenced from the Step table. Tech constraints: Build this as a standard modern web app — a React/Next.js frontend, a REST (or equivalent) API backend, and a relational database (Postgres) for all the entities above, with clear separation between the public-facing viewer routes (no auth) and the authenticated dashboard/editor routes. Design the API so the step editor's callout data is stored as structured JSON per step rather than flattened, to keep the canvas editor flexible. Ensure the app is responsive enough for the dashboard and public viewer to work on tablet-sized screens, though the step editor itself can assume desktop use.

Marketing landing pagePublish success screenGuide analytics pageAccount settingsWorkspace settingsWorkspace dashboard
Marketing landing page

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 7

Shadow-GuideFlow System Requirements Document

Introduction

The project "Shadow-GuideFlow" aims to develop a web application called GuideFlow. This interactive guide and product demo tool is designed for SaaS teams, enabling non-technical users to transform any workflow they perform in a browser into a shareable, step-by-step interactive guide, how-to article, or product demo, without writing code or editing video.

System Overview

GuideFlow addresses the inefficiencies faced by SaaS companies and internal teams who spend excessive time creating static documentation that quickly becomes outdated. By capturing real user actions directly from the browser, GuideFlow auto-generates interactive guides with annotated screenshots, hotspots, and optional voiceover/text callouts, significantly reducing the time required to create guides.

Page 2 of 7

Product Interpretation and Delivery Boundary

  • Domain Descriptors:

    • Interactive guide creation: GuideFlow captures user actions to auto-generate guides.
    • Team collaboration and workspace management: Supports shared workspaces for team collaboration.
  • What is being built: A web application that allows users to create interactive guides from browser workflows, manage these guides within workspaces, and share them publicly or privately.

  • Excluded Assumptions: Generic CMS features and standalone video editing tools are not part of this project.

  • Access: Application-owned identity with authentication required for dashboard/editor/analytics/settings screens; public guide viewer requires no login.

  • Behavior Contracts:

    • Edit Guide: SaaS onboarding/product teams can customize guides in the step editor.
    • Publish Guide: Internal ops/HR teams can publish guides to generate public URLs and embed codes.
    • View Guide: Viewers can access guides via public links without needing an account.
    • Organize Guides and Control Visibility: Authenticated users can organize guides and control their visibility.
    • Invite and Manage Team Members in Workspace: Workspace admins can invite users and manage roles.
    • Authenticate User and Enforce Permissions: Users are authenticated to access various app surfaces.
    • Capture Workflow to Create Guide Draft: Customer support and success teams can initiate guide recording sessions.
Page 3 of 7

Page Content and Component Coverage

  • Marketing Landing Page: Public entry point showcasing value proposition, pricing, and sign-up CTA.
  • Sign Up / Log In Pages: Authentication entry for users via email/password and Google OAuth.
  • Workspace Dashboard: Central hub for managing guides and workspaces, featuring search, filter, and "New Guide" button.
  • Guide Recorder/Upload Flow: Interface for starting recording sessions or uploading screenshots.
  • Step Editor: Allows editing and enhancement of captured guide steps with reorderable lists and callout tools.
  • Publish Success Screen: Displays public link, embed code, and visibility toggle for published guides.
  • Guide Analytics Page: Provides insights into guide usage and performance.
  • Public Guide Viewer: Full-screen step-through experience for guide consumption without login.
  • Workspace Settings: Manage team members and billing.
  • Account Settings: Manage user profile and connected accounts.

Functional Requirements

  • As a Customer support and success team member, I should be able to install a browser extension or use an in-app recorder to capture a sequence of screens/clicks on any website, which automatically generates a draft guide with one step per captured screen and an auto-cropped screenshot. explicit
  • As a User, I should be able to edit a generated guide in a step editor: reorder steps, edit step titles/descriptions, add text callouts, arrows, and blur/redact boxes over sensitive info on each screenshot. explicit
  • As a User, I should be able to publish a guide and get a shareable public link, plus an embeddable iframe/JS snippet to drop the guide into my own website or help center. explicit
  • As a User, I should be able to organize guides into folders/collections and control each guide's visibility (private, unlisted link, public). explicit
  • As a User, I should be able to view basic analytics per guide: total views, completion rate, and drop-off step. explicit
  • As a User on the free plan, I should be capped at 5 published guides and be able to upgrade to a paid plan for unlimited guides via a hosted checkout. explicit
  • As a User, I should be able to invite teammates to a shared workspace so guides are co-owned and editable by the team. explicit
  • As a Viewer, I should be able to click through a published guide step by step in a clean, distraction-free viewer with a progress indicator, without needing an account. explicit
Page 4 of 7

User Personas

  • Customer Support and Success Teams: Primary users for creating guides.
  • SaaS Onboarding/Product Teams: Users for building product tours.
  • Internal Ops/HR Teams: Users for documenting SOPs.
  • Viewers: Consumers of published guides.
Page 5 of 7

Core User Flows

  1. Visitor Flow:

    • Lands on the marketing homepage.
    • Signs up with email or Google OAuth.
    • Enters an empty workspace dashboard.
    • Clicks "New Guide" to start a guide creation process.
  2. Guide Creation Flow:

    • Uploads a sequence of screenshots or uses the recorder to auto-capture steps.
    • Lands in the step editor where captured steps appear as an ordered list with screenshots.
    • Edits titles, adds callouts/blur boxes, reorders steps, and clicks "Publish."
  3. Publishing Flow:

    • Publishing generates a public URL and an embed snippet.
    • Both are shown on a success screen with copy buttons.
    • The guide appears in the dashboard's guide list with a view count.
  4. Guide Viewing Flow:

    • A separate anonymous viewer opens the public link.
    • Clicks "Next"/"Back" through the guide's steps without needing an account.
Page 6 of 7

Visuals Colors and Theme

  • Primary: #007BFF
  • Primary Light: #66B2FF
  • Secondary: #6C757D
  • Accent: #28A745
  • Highlight: #FFC107
  • Background: #FFFFFF
  • Surface: #F8F9FA
  • Text: #212529
  • Text Muted: #6C757D
  • Border: #DEE2E6

Signature Design Concept

The design concept for GuideFlow focuses on a clean, modern interface that emphasizes usability and clarity. The marketing landing page will feature a dynamic hero section with subtle animations to draw attention to the product's key benefits. The workspace dashboard will use a card-based layout to organize guides and folders, providing a clear visual hierarchy. The step editor will feature a split-panel design, allowing users to easily navigate and edit guide steps. The public guide viewer will offer a distraction-free experience, with a progress indicator to guide viewers through the steps.

Interaction Model & Motion Direction

  • Marketing Landing Page: Animated with moderate scroll-triggered reveals and hover transitions.
  • Internal Pages: Static layout prioritizing clarity and data density.
  • Public Guide Viewer: Minimal motion to maintain focus on the guide content.
Page 7 of 7

Non-Functional Requirements

  • Performance: The application must be responsive and performant on both desktop and tablet-sized screens. required_inference
  • Security: Ensure secure access control and data protection for all user data. required_inference
  • Scalability: The system should support multiple concurrent users without performance degradation. required_inference

Tech Stack

  • Frontend: React/Next.js
  • Backend: REST API
  • Database: PostgreSQL
  • Integrations: Stripe for billing, Google OAuth for authentication, S3-compatible storage for screenshots

Assumptions and Constraints

  • The application will be built as a standard modern web app with a clear separation between public-facing and authenticated routes.
  • The step editor is optimized for desktop use, while other components are responsive for tablet-sized screens.
  • The system will use structured JSON for storing callout data in the step editor to maintain flexibility.

Glossary

  • GuideFlow: The web application being developed.
  • SaaS: Software as a Service.
  • OAuth: Open Authorization, a protocol for secure authorization.
  • API: Application Programming Interface.
  • JSON: JavaScript Object Notation, a lightweight data interchange format.
Marketing landing page design preview
Marketing landing page: Visitor views value proposition and clicks sign-up CTA
Sign up / log in pages: User signs up with email or Google OAuth
Workspace dashboard: User enters empty workspace dashboard and clicks New Guide
Guide recorder/upload flow: User captures browser workflow via recorder or extension
Guide recorder/upload flow: Draft guide auto-generated with steps and screenshots
Guide recorder/upload flow: Guide draft not created because recording fails
Workspace dashboard: User organizes guide into a folder and sets its visibility
Workspace settings: User invites teammates by email and manages roles
Workspace settings: Invitation not sent or role not updated
Account settings: User manages profile information and connected accounts
Marketing landing page design preview
Marketing landing page: Visitor views value proposition and clicks sign-up CTA
Sign up / log in pages: User signs up with email or Google OAuth
Workspace dashboard: User enters empty workspace dashboard and clicks New Guide
Guide recorder/upload flow: User captures browser workflow via recorder or extension
Guide recorder/upload flow: Draft guide auto-generated with steps and screenshots
Guide recorder/upload flow: Guide draft not created because recording fails
Workspace dashboard: User organizes guide into a folder and sets its visibility
Workspace settings: User invites teammates by email and manages roles
Workspace settings: Invitation not sent or role not updated
Account settings: User manages profile information and connected accounts