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

Button component #99

Open
leonid opened this issue Sep 11, 2024 · 0 comments
Open

Button component #99

leonid opened this issue Sep 11, 2024 · 0 comments
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Milestone

Comments

@leonid
Copy link
Collaborator

leonid commented Sep 11, 2024

A Button component is a fundamental UI element used to trigger actions or events. Here are the key features a Button component should have:

  1. Variants: Support for different button variants such as primary, secondary, tertiary, etc.
  2. Sizes: Support for different button sizes (small, medium, large).
  3. States: Different states such as default, hover, active, disabled, and loading.
  4. Icons: Ability to include icons before or after the button text.
  5. Loading Indicator: Option to show a loading spinner or indicator when the button is in a loading state.
  6. Custom Styling: Ability to customize the appearance through CSS classes or styles.
  7. Accessibility: Ensure the button is accessible with proper ARIA attributes and keyboard navigation.
  8. Events: Emit events for user interactions such as click, focus, blur, etc.
  9. Types: Support for different button types (button, submit, reset).
  10. Full-Width: Option to make the button take the full width of its container.
  11. Rounded Corners: Option to have rounded corners or different border-radius styles.
  12. Text and Background Colors: Customizable text and background colors.
  13. Outline: Option to have an outlined button style.
  14. Shadow: Ability to add shadow effects to the button.
  15. Group: Ability to group buttons together for segmented controls or toolbars.

These features ensure that the Button component is versatile, user-friendly, and accessible.

Design

https://www.figma.com/design/6nFlVmwDwvGloglQHxyElh/Syntax-UI-3.0?node-id=125-3207&m=dev

To be implemented

  • Button component as vue component
  • Button styles and extension points as css properties
  • Vitepress documentation: feature description, examples and api documentation
  • Button unit tests
  • Storybook demos and documentation
@leonid leonid self-assigned this Sep 11, 2024
@leonid leonid added this to the Alpha release milestone Sep 11, 2024
@leonid leonid added documentation Improvements or additions to documentation enhancement New feature or request labels Sep 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant