Contribution Guidelines

Help us build the best Power Apps component library by following these standards.

Code of Conduct

Our community is built on mutual respect. We are committed to providing a friendly, safe, and welcoming environment for all, regardless of level of experience, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, nationality, or other similar characteristic.

  • Be respectful: Treat all contributors with respect and kindness.
  • Be collaborative: Work together constructively. Disagreements can happen, but they should be handled with professionalism.
  • Be mindful: Your work will be used by other people, and you in turn will depend on the work of others. Any decision you take will affect users and colleagues, and you should take those consequences into account when making decisions.

Submitting New Components

When you're ready to share your work, please use the "Contribute" button in the navigation bar. All submissions are reviewed by our team before being published. Here’s what we look for:

  • Usefulness: The component should solve a common problem or provide a UI pattern that is frequently needed in enterprise applications.
  • Originality: While inspired by other designs, the component should be your own implementation in Power Apps YAML.
  • Clarity: Provide a clear name, a concise description of what it does, and simple instructions for others to use it.
  • Completeness: Ensure your submission includes the full YAML snippet. Incomplete submissions cannot be approved.

YAML Best Practices

To ensure consistency and ease of use, please follow these best practices when writing your YAML snippets.

  • Naming Conventions: Use clear and consistent names for your controls. We recommend a prefix like cs_ (for CopySnips) or your own initials to avoid naming conflicts (e.g., cs_btnPrimary).
  • Variable Usage: Clearly define any variables that need to be set by the user (e.g., in App.OnStart). Use descriptive names like varShowSuccessModal instead of generic ones.
  • Responsiveness: Whenever possible, use relative positioning (e.g., Parent.Width) instead of fixed pixel values to ensure your component adapts to different screen sizes.
  • Performance: Avoid overly complex Power Fx formulas in properties that are re-evaluated frequently, such as Fill or Visible.

For more detailed instructions on how to enable YAML source code view in Power Apps, please see our Documentation.