Your experience is someone else's starting point

Build it. Share it. Pass it on.

A clever flow. A helpful app. A new way to solve a familiar problem. Share what you've learned and help the next maker go further.

Read the contribution guide
Microsoft 365 and Power Platform Community contributor badge, 2026

Your ideas can help someone build their next big thing

Share a little. Make a difference.

Every sample starts with someone sharing what they know. Join our contributors and help the next maker get moving.

The community contributor badge celebrates people who share their knowledge.

  1. Fork and branch.

    Start from the latest main branch, check for similar samples, and keep your pull request focused. You'll need to sign the Microsoft Contributor License Agreement.

  2. Tell the whole story.

    Include your source, a clear README, prerequisites, a real screenshot, and complete sample metadata. Make it possible for someone else to reproduce your result.

  3. Validate and share.

    Run the catalog checks, verify the preview locally, then open a pull request using the repository template. Include what you tested and anything reviewers need to know.

A home for your sample

Keep it self-contained.

samples/your-sample-name/
  README.md
  assets/
    sample.json
    preview.png
  sourcecode/
  solution/

Use lowercase folder names. Include source and packaged solutions where appropriate for your sample type; not every sample uses the same structure.

Help your sample get discovered

Make a great first impression.

  • Give it a clear name, summary, product labels, categories, author information, and accurate dates.
  • Add a high-resolution screenshot showing the configured experience. The gallery selects the first image thumbnail by ascending order.
  • Store referenced screenshots inside your sample's assets folder. Provide descriptive alternative text.
  • Include permissions, connector/licensing requirements, setup instructions, and a minimal path to a working result.
  • Keep one sample-view tracker as the final line of your README. Its URL must match your actual sample folder.

Use Copilot Studio for new agent samples. Existing Power Virtual Agents metadata remains supported.

Before opening a pull request

Check the gallery, too.

cd site
npm ci
npm run validate:readme-trackers
npm test
npm run check
npm run build

For interface changes, also run npm run test:e2e after building. The generator checks every sample folder and reports failures rather than hiding incomplete entries.

Your final README image should use this address, replacing your-sample-name:

<img src="https://m365-visitor-stats.azurewebsites.net/powerplatform-samples/samples/your-sample-name" />

Don't include secrets, private data, or credentials in your solution, source files, metadata, or screenshots.