Skip to content

Instantly share code, notes, and snippets.

@pedroborges
Created September 25, 2024 16:53
Show Gist options
  • Save pedroborges/49598c7dc17ab37e34ad1b5197d014e1 to your computer and use it in GitHub Desktop.
Save pedroborges/49598c7dc17ab37e34ad1b5197d014e1 to your computer and use it in GitHub Desktop.
BetaBook features list

Signup

1st step

  • ✅ Empty fields (3 required validation errors)
  • ✅ One empty field (required validation error)
  • ✅ Existing email (email taken validation error)
  • ✅ Successfully signed up (redirects to step 2)

2nd step

  • ✅ Empty fields (2 required validation errors)
  • ✅ One empty field (required validation error)
  • ✅ Successfully signed up (redirects to step 3)

3rd step

  • ✅ Empty fields (3 required validation errors)
  • ✅ Empty checkbox (required validation error)
  • ✅ Existing email (email taken validation error)
  • ✅ Successfully signed up (redirects to dashboard)

Signin

Popup

  • ✅ Empty fields (redirects to /login with error message)
  • ✅ Valid fields (redirects to user dashboard)

Login page

  • ✅ Empty fields (error message)
  • ✅ Valid fields (redirects to user dashboard)

Dashboard

  • ✅ Users see their notifications
  • ✅ Users can dismiss a single notification
  • ✅ Users can dismiss all notifications
  • ✅ Authors see "Create Book" button
  • ✅ Authors see list of their books
  • ✅ Readers see list of books they are reading
  • ✅ Invitees see pending invitations on their dashboard
  • ✅ Invitees can accept invitation from dashboard (redirects to book details page)
  • ✅ Invitees can decline invitation from dashboard (redirects to invitation declined page)

Book (as author)

Create

  • ✅ Empty fields (flashes title error message)
  • ✅ Redirected to book page

Details Page

  • ✅ Edits title and author name
  • ✅ Edits about text
  • ✅ Edits critique text
  • ✅ Adds a chapter (goes to chapter /new form)
  • ✅ Adds a questionnaire (goes to chapter /new?q=1 form)
  • ✅ View chapter (goes to chapter details page)
  • ✅ Hides chapter (adds "Hidden" to the chapter title and changes to unlocked icon)
  • ✅ Edits chapter (goes to chapter edit page)
  • ✅ Deletes chapter/questionnaire (opens prompt and stays on the same page)
  • ✅ Edits chapter title inline
  • ✅ Toggle automatic chapter number
  • ✅ Sorts chapters

Book settings

  • ✅ Enable/disable reading reminders (updates status and enables/disables threshold input)
  • ✅ Updated reading reminders threshold
  • ✅ Saves other settings
  • ✅ Deletes book

Book invitations

  • ✅ Enable/disable signup link
  • ✅ Author can search for existing readers while typing email address
  • ✅ Author can send invitation email (display success message)
  • ✅ Author can send invitation email w/ custom message (display success message)
  • ✅ Updates pending invitations list
  • ✅ Author can resend an invitation
  • ✅ Author can cancel an invitation

Track readers

  • ✅ Tracking by chapters/versions works
  • ✅ Reader status updates
  • ✅ Reader last seen updates

Feedback

  • ✅ Author can see feedback by chapter
  • ✅ Author can search feedback by keywork
  • ✅ Author can filter feedback by marks
  • ✅ Author can filter feedback by readers
  • ✅ Author can filter feedback by chapters
  • ✅ Author can reply to feedback
  • ✅ Author can edit replies to feedback
  • ✅ Author can select marks for feedback

Book chapter (as author)

Add Chapter

  • ✅ Empty fields (redirects to chapter /done page)
  • ✅ All fields filled (redirects to chapter /done page)
  • ✅ Switch between rich text and markdown
  • ⛔️ Upload image (missing Uploadcare API key)

Edit Chapter

  • ✅ Empty fields (redirects to chapter /done page)
  • ✅ All fields filled (redirects to chapter /done page)
  • ✅ Switch between rich text and markdown
  • ⛔️ Upload image (missing Uploadcare API key)
  • ✅ Notify readers
  • ⛔️ Notify readers via email (try again when API key is added)

Add Questionnaire

  • ✅ Empty fields (redirects to chapter /done page)
  • ✅ All fields filled (redirects to chapter /done page)
  • ✅ Switch between rich text and markdown
  • ⛔️ Upload image (missing Uploadcare API key)

Edit Questionnaire

  • ✅ Empty fields (redirects to chapter /done page)
  • ✅ All fields filled (redirects to chapter /done page)
  • ✅ Switch between rich text and markdown
  • ⛔️ Upload image (missing Uploadcare API key)
  • ✅ Notify readers
  • ⛔️ Notify readers via email (try again when API key is added)

Book (as reader)

Book details page

  • ✅ Sees list of chapters, read status, and words count
  • ✅ Updates chapter read status when a feedback is left

Book settings

  • ✅ Toggles email notifications preference
  • ✅ Clicking "I finished reading" changes finish reading text
  • ✅ Clicking "I need to quit" shows a reason textarea
  • ✅ Attempting to quit with empty/short textarea (flashes validation errors)
  • ✅ Entering a valid quit reason changes finish reading text
  • ✅ Changes author's options text based on book settings

My Feedback

  • ✅ Readers can see comments they left
  • ✅ Readers can see author replies to their comments
  • ✅ Readers can edit their comments

Book chapter (as reader)

  • ✅ Readers can see chapter content
  • ✅ Readers can bookmark paragraphs
  • ✅ Readers can adjust display settings (night mode, font size, paragraph style)
  • ✅ Readers can comment
  • ✅ Readers can draft comments
  • ✅ Readers can resume editing draft comments

Account

Settings

  • ✅ User can update personal info (flashes success message)
  • ✅ User can update password (flashes success message)
  • ✅ User can add new email addresses (sends verification email)
  • ✅ Opening the verification link adds the email address
  • ✅ User can change the primary email address
  • ✅ User can delete an email address

Preferences

  • ✅ User can update account type (flashes success message)

Reader profile

  • ✅ User can create a reader profile (opens the form)
  • ✅ User can update their reader profile (flashes "Saved!" message)

Subscription

  • ✅ Reader can't subscribe to a plan (sees always free message)
  • ✅ Author can add a credit card (sees card details and can select plan)
  • ✅ Author can remove a credit card
  • ⛔️ Author can apply a valid coupon code (can't test with access to Stripe)
  • ✅ Author can not apply an invalid coupon code (sees error alert)
  • ✅ Author can subscribe to a plan
  • ✅ Author can turn off auto-renewal
  • ✅ Author can turn on auto-renewal

Invitations

Invitation link

  • ✅ Accept links open welcome page (with buttons to login or signup)
  • ✅ Accepted links open login page with invitation accepted message
  • ✅ Decline links open declined page
  • ✅ Declined links open 404 page

Reader signup

  • ✅ Empty fields (flashes validation errors)
  • ✅ One empty field (flashes validation error)
  • ✅ Existing email (email taken validation error)
  • ✅ Successfully signed up (redirects to dashboard)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment