feat: implement progressive form disclosure with gender identity elig…#860
feat: implement progressive form disclosure with gender identity elig…#860kabugatti wants to merge 5 commits into
Conversation
…ibility filter - Move JavaScript and CSS inline from external files (form.js, forms.css) - Add gender identity as first step to filter eligible candidates early - Implement 'one thing per page' philosophy with step-by-step progression - Add conditional logic to prevent overwhelming users with requirements text - Fix form structure to properly display Step 2 content - Improve accessibility with ARIA labels and responsive design Addresses issue Techtonica#567 follow-up work from PR Techtonica#538
|
Could we change out the recommendation that rejected people follow us with learning resources such as freeCodeCamp and our curriculum? |
|
@monikkaelyse It's possible, I'll check it out then get back to you. |
|
For more context about @MichelleGlauser's comment above, you can replace the content of the rejection screen with the following
|
|
@kabugatti It appears this work was done directly in the mvp branch so I'm having some issues with my local remotes trying to pull orgin/mvp vs kubugatti/mvp. Note: This resolved the issue above BUT I'm seeing all of these changes in our main mvp branch now which doesn't seem right because this isn't merged in? @daaimah123 Are you seeing this locally as well? Should this work be done in a feature branch off of the mvp branch to be merged in instead? It appears that the rest of the forms have some CSS changes that appear to be new and I'm trying to figure out what was introduced here (vs what it used to look like). |
monikkaelyse
left a comment
There was a problem hiding this comment.
See previous comment about branching
|
Closing with updated branching ownership in new PR (#869). |








📝 Description
This PR implements progressive form disclosure improvements following the UK Government's "one thing per page" philosophy. The application form now starts with a gender identity eligibility check to quickly filter candidates and save time for non-eligible users. All external JavaScript and CSS dependencies have been moved inline, and conditional logic prevents front-loading of requirements text.
This addresses the follow-up work requested in issue #567 for iterating on PR #538, specifically implementing Derek Houck's suggestions for form improvements.
🔂 Changes Made
Frontend/Templates:
templates/app/form.htmlto implement step-by-step disclosureJavaScript Improvements:
/static/js/form.jsis now embedded directly in the templateCSS Improvements:
/static/css/forms.cssare now embedded in the templateUser Experience:
⚙️ Related Issue
🍏 Type of Change
🎁 Acceptance Criteria
🧰 New Environment Variables or Requirements
No new environment variables or dependencies introduced. This change actually reduces external dependencies by moving JavaScript and CSS inline.
🧪 How to test
/app-formroute🚀 Deployment Notes (if applicable)
No special deployment steps required. The changes are self-contained within the template file and do not require:
📸 Demo
Screencast.From.2025-10-14.18-22-00.mp4
✅ Checklist
🔄 Additional Notes
This implementation follows best practices from the UK Government Digital Service for form design and successfully addresses all requirements outlined in issue #567. The progressive disclosure approach improves user experience for both eligible and non-eligible applicants while maintaining the integrity of Techtonica's application process.