Medium contribution spec
The following page outlines the process of a medium contribution to CivicTheme.
Component overview
Component name
[Insert Component Name]
Type
[Atom, Molecule, Organism, etc.]
Intended purpose
Provide a detailed explanation of the component’s purpose (e.g., "To extend the functionality of the form field component to support file uploads.")
Primary use case
[Define primary scenarios.]
Secondary use case
[Optional, additional scenarios where it could be applied.]
Existing patterns/components
Do any existing patterns fulfill this need?
[Yes/No. If yes, reference the relevant pattern.]
References and inspiration
Description of component
[Provide background on how the component was conceived.]
References/inspiration sources
[Provide links or files (e.g., Figma, mockups).]
Interactions and behaviours
Intended user interactions
[Describe expected interactions (e.g., "Multi-step form progress displayed dynamically.")]
Expected component behaviour
[Define behaviour in various contexts (e.g., loading states, user errors).]
Accessibility considerations
WCAG compliance level
[A, AA]
Expected component behaviour (accessibility)
[Outline required accessible interactions and considerations.]
Potential accessibility challenges
[List known challenges or risks.]
User research
Research completed
[Provide key research insights. If possible, show how these insights influenced the component.]
Results
[Link to additional resources, if any.]
Security requirements
Security considerations
[List any potential risks, such as user input or data handling.]
Data handling requirements
[Describe if the component interacts with user data.]
Privacy concerns
[List any privacy risks, if applicable.]
Technical considerations
Required technology/framework support
[e.g., Drupal, React, Vue.js]
Known component dependencies
[List dependencies, if any.]
Performance expectations
[Specify performance goals or requirements (e.g., loading speed, responsiveness).]
Submission details
Submitted by
[Contributor's Name]
Date
[Submission Date]
Contact information
[Name, Email or GitHub username]
Feedback
We're always looking at ways to improve our model for contributions, and rely on your feedback to ensure an enjoyable contribution experience. The best way to give us feedback is to join our Slack channel and chat to us there, or contact us via email!
Last updated