Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V2 Dev #514

Open
bbertucc opened this issue Jan 20, 2025 · 2 comments
Open

V2 Dev #514

bbertucc opened this issue Jan 20, 2025 · 2 comments

Comments

@bbertucc
Copy link
Member

bbertucc commented Jan 20, 2025

1. Strip it down to the studs @azdak

Setting up equalify-dashboard, stripping out what isn't and using radix components from scratch:

  • Audits (with and without data)
  • Audit Builder Step 1
  • Audit Builder Step 2
  • Audit Builder Step 3
  • Email summary
  • Audit Details
    • General Page
    • View Options
    • Group By Page Results
    • Group By Issue Results
    • Group By Check Results
    • No grouping Results
    • Progress
    • Generate Ticket (with Markup editor)
  • Pages
  • Page Detail
  • Logs
  • Log Detail
  • Upgrade Screen
  • Account

2. Buildout Frontend Components and Layouts @bbertucc

Integrate styling

  • Create layouts
  • Add Style
  • Accessibility Testing

3. Audit Refactor - @azdak

Audits Structuring

  • Figure out DB Structure
  • Add ability to Ignore item from audit
  • Develop Audits Frontend
  • Audit Details Frontend
    • General Page
    • View Options
    • Group By Page Results
    • Group By Issue Results
    • Group By Check Results
    • No grouping Results
    • Progress
    • Generate Ticket (with Markup editor)

Audit Builder

  • Create the add/remove page functionality

Audit Progress

  • Snapshot of progress everytime audit runs or items are ignored, and expose that

Scan Results Processing

  • Fix way scan processor judges if something is equalified or not

Generate Ticket

  • Process selected data into Markdown and log

Checks Feature

  • Create API Integration with Scan to send data and process results
  • Update scan so checks can be segmented
  • Develop way to also run Editora11y checks
  • Build Editora11y conversion into equalify-schema

4. Business Logic - @bbertucc

Scan Count Tracking

  • Track number of scans
  • relate accounts to packages in Stirpe
  • integrate conditions (IE: What happens if someone is out of scans?)
  • Hookup user account system to biz logic
  • Hookup scan system to biz logic

Email System

Scheduled AWS function interacting with Campaign Monitor that:

  • Send emails on scheduled time (daily, weekly, monthly).
  • Summarize each audit data and send emails.

5. Multi-User - @bbertucc

Authentication

  • Move around existing auth
  • Allow multiple users per account

User Invitation

  • Ability to add users to accounts
  • Update in business logic, so billing changes when adding users
  • Delete user functionality
  • Make user owner functionality
  • Restrict billing upgrades to owner.

6. Logging - @bbertucc

Build function that can take variables

Logging Feature

  • Develop data architecture
  • Integrate logging triggers throughout UX

In-App Notifications

  • Create notification tray
  • Add logic for displaying notifications.

Screenshot Checks Feature (Build this Last) - @azdak

  • Build Infrastructure
  • Handle API Endpoint
  • Develop optional capture during scan
  • Integrate into Biz systems as a premium feature.
@azdak
Copy link
Collaborator

azdak commented Jan 22, 2025

Made enough changes to the above that I'm just including this as a separate comment:

@azdak
Copy link
Collaborator

azdak commented Jan 22, 2025

Task List

1. Strip it down to the studs @azdak

Adapt or fork equalify-dashboard for v2 development.

(a) Architecture Updates

  • Remove tailwind dependency for styling, replace with css-in-js system like themeui, chakraui, or pandacss
  • Move to radix primitives for all core components
  • Simplify fetching architecture
  • Remove superflous libraries

(b) Stub new pages/information architecture

  • Audits (listing page)
    • Audit Detail
  • Audit Builder
  • Page Listing
    • Page Detail
  • Log Listing
    • Log Detail (Depending this may not be necessary- could probably be an expander on the log listing page)
  • Upgrade Screen
  • Account

Ensure auth passthrough works as expected on all pages/screens.
See demo for on-page functionality and details.

2. Audit Refactor - @azdak

(a) Audits Backend

  • Figure out new DB structure for audits
    • Each audit contains:
      • Collection of Selected Pages
      • Collection of Selected Checks
      • Scan Frequency
      • Collection of Nodes returned from scan
      • Collection of Ignored Nodes
      • Count of Unequalified/Equalified Nodes
  • Endpoints
    • Create
    • Delete
    • Updates
    • List
    • Single
    • etc

(b) Audit Processing

  • Audits are run manually OR on fixed schedule
  • Scan results data are ingested, and used to update nodes
  • Update Equalified node count for Audit

(c) Audits Frontend

  • Audit Listing Page (see demo for filters and functionality)
  • Single Audit Page
  • Audit Builder

(d) Generate Ticket

  • Process selected Node into Markdown

3. Allow User-Selected Checks

  • Audits store selection of checks
  • Update scan so checks can be chosen by parameter
  • New Checks: Editora11y
    • Add Editora11y to scan
    • Build Editora11y conversion into equalify-schema
  • System for storing and sending selected checks should be extensible

4. Business Logic - @bbertucc

(a) Scan Count Tracking

  • Track number of scans
  • relate accounts to packages in Stripe
  • integrate conditions (IE: What happens if someone is out of scans?)
  • Hookup user account system to biz logic
  • Hookup scan system to biz logic

(b) Email System

Scheduled AWS function interacting with Campaign Monitor that:

  • Send emails on scheduled time (daily, weekly, monthly).
  • Summarize each audit data and send emails.

5. Multi-User - @bbertucc

(a) Authentication

  • Move around existing auth
  • Allow multiple users per account

(b) User Invitation

  • Ability to add users to accounts
  • Update in business logic, so billing changes when adding users
  • Delete user functionality
  • Make user owner functionality
  • Restrict billing upgrades to owner.

6. Logging - @bbertucc

Build function that can take variables

(a) Logging Feature

  • Develop data architecture
  • Integrate logging triggers throughout API

(b) In-App Notifications

  • Create notification tray
  • Add logic for displaying notifications.

7. Screenshot Checks Feature (Build this Last) - @azdak

  • Build Infrastructure
  • Handle API Endpoint
  • Develop optional capture during scan
  • Integrate into Biz systems as a premium feature.

Estimates

@azdak

(these are all a little ballpark)

Task Subtask Hours
1. Strip it down to studs
Architecture Updates 12-16
Stub new pages/IA 2-4
2. Audit Refactor
Audits Backend 16-24
Audit Processing 8
Audits Frontend 16
Generate Tickets 2-4
3. User-Selected Checks 16

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants