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

VADX Epic - ideas for discovery #192

Open
8 tasks
adamwhitlock1 opened this issue Nov 8, 2024 · 0 comments
Open
8 tasks

VADX Epic - ideas for discovery #192

adamwhitlock1 opened this issue Nov 8, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@adamwhitlock1
Copy link
Collaborator

User Story

As an engineer I would like to improve the quality of the tooling for working locally and when in a codespace.
This issue can serve as a mini epic to catalog ideas and split off into other issues around building tooling to help us prototype faster.

Im using the working title of VADX for developer experience oriented tools

Background

There are tons of ways that a series of tools could help developers at the VA

Areas to explore:

Platform utilities

  • mock auth / auth state hooks to set up an app to think it is impersonated
  • context provider for VA. Get form config, route info, and other application context in one place
  • Hooks. Lots of application logic is reinvented across apps. Common hooks should be provided to ensure that applications access things in a consistent manner.
  • redux toolkit integration
  • redux toolkit query tools to consistently access api data
  • profile and common data access. Reusable hooks / components for core pieces of profile data (phone, email, address, disability rating, etc)
    • expand data access to other common uses? benefits status, form status, other reused pieces of data that have been duplicated throughout applications

Mock server

  • Standardizing a happy path to various endpoint responses
  • Standardizing error responses and providing expanded error responses for common errors
  • Improving in memory database MVP. Allow updating other pieces of data? Save in progress?
  • Self documenting mock server. List active routes and their responses within an introspection endpoint

VADX panel

  • Feature toggle manager
  • Links to common developer docs
  • Form links in panel instead of above form
  • Axe scanning / reporting
  • Form prefill tools, allow prefill to be mocked or put into the form at any point
  • Form config inspector. See basic structure of current config and know when a page updates the schema or uiSchema dynamically.

DX route / app

  • full react app that lives at a specific global route in staging or just local like /vadx
  • ability to start the dev server, mock server, run different apps in watch mode, different mock server files, manipulate mock server responses, monitor servers
  • server sent events will provide realtime STDOUT of processes. No more random timeouts on dev server or having to repeatedly ctrl-c out of the dev server to get it to quit. One command starts both tools
  • Notifications on the FE if a process crashes
  • memory and cpu monitoring?
  • open mock server in VSCode / other editors?

Coding and IDE helpers

  • VSCode and other ide extensions to aid in CSS class completion, component library usage, and other common tasks for building UI
  • integration into FE VADX tools to monitor your dev and mock server from the editor as well
  • snippet collection

LLM trained on the va.gov-team repo

  • feed all issues, documents, and other content from this repo into a model, and allow a user to ask questions about research, design, dev and more.

ACs

  • More tasks have been created to flesh out MVPs of these ideas (whichever are worth exploring)

Review needed by

  • VA Product Owner
  • Product Manager
  • UX Research Team
  • Engineering Team

Definition of Done

  • Documentation has been updated, if applicable.
  • Acceptance Criteria in related issue are met.
  • Reviewers have approved.
@adamwhitlock1 adamwhitlock1 added the enhancement New feature or request label Nov 8, 2024
@adamwhitlock1 adamwhitlock1 self-assigned this Nov 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant