diff --git a/.github/ISSUE_TEMPLATE/bug-report.md b/.github/ISSUE_TEMPLATE/bug_report_template.md similarity index 60% rename from .github/ISSUE_TEMPLATE/bug-report.md rename to .github/ISSUE_TEMPLATE/bug_report_template.md index 74f3dae4..e2a3e894 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.md +++ b/.github/ISSUE_TEMPLATE/bug_report_template.md @@ -1,14 +1,31 @@ --- name: Bug Report -about: Create a report to help us improve +about: Report a bug in the .NET MAUI Markup Toolkit title: "[Bug] " -labels: 'bug, s/unverified' +labels: bug, unverified assignees: '' --- + + ### Description + + +### Stack Trace + + + +### Link to Reproduction Sample + + + ### Steps to Reproduce 1. @@ -38,7 +55,3 @@ assignees: '' ### Reproduction imagery - -### Reproduction Link - - diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..1d688c1c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,6 @@ +blank_issues_enabled: false +contact_links: + - name: Propose a New Feature or Ask a Question + url: https://github.com/communitytoolkit/maui.markup/discussions/new + about: Starting a discussion is the first step in creating a new feature proposal + diff --git a/.github/ISSUE_TEMPLATE/feature-request.md b/.github/ISSUE_TEMPLATE/feature-request.md deleted file mode 100644 index 0129bdf8..00000000 --- a/.github/ISSUE_TEMPLATE/feature-request.md +++ /dev/null @@ -1,33 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for CommunityToolkit -title: "[Enhancement] YOUR IDEA!" -labels: feature-request, needs-approval -assignees: '' - ---- - -## Summary - - - -## API Changes - - - -## Intended Use Case - - -## Who Will Do The Work? - -- [ ] I am willing to take this on myself -- [ ] Just putting this out there for someone to pick up diff --git a/.github/ISSUE_TEMPLATE/new-api-spec.md b/.github/ISSUE_TEMPLATE/new-api-spec.md deleted file mode 100644 index 75ceb90a..00000000 --- a/.github/ISSUE_TEMPLATE/new-api-spec.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -name: New API Spec -about: An official specification for new APIS -title: "[Spec] " -labels: "feature-request" -assignees: '' - ---- - -# [The feature] - -Provide a concise description of the feature and the motivation for adding it to CommunityToolkit.Maui.Markup - -# API - -## [ class ] - -### Properties - -| API | Description | -| ------------- | ------------- | -| [name] | Gets or sets [description]. | - -### Events - -| API | Description | -| ------------- | ------------- | -| [name] | [API documentation/description] | - -# Scenarios - -# Platform Compatibility -- Target Frameworks: - - iOS: - - Android: - - UWP: -# Backward Compatibility - -# Difficulty : [low/medium/high] \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/open-a-new-feature-proposal.md b/.github/ISSUE_TEMPLATE/open-a-new-feature-proposal.md new file mode 100644 index 00000000..ecff95d8 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/open-a-new-feature-proposal.md @@ -0,0 +1,57 @@ +--- +name: Open a New Feature Proposal +about: For proposals that have been discussed in the Discussions tab and have been approved by a member of the core .NET MAUI Toolkit team +title: "[Proposal] " +labels: new, proposal +assignees: '' + +--- + + +# [FEATURE_NAME] + +* [x] Proposed +* [ ] Prototype: Not Started +* [ ] Implementation: Not Started +* [ ] Documentation: Not Started +* [ ] Sample: Not Started + +## Link to Discussion + + + +## Summary +[summary]: #summary + + + +## Motivation +[motivation]: #motivation + + + +## Detailed Design +[design]: #detailed-design + + + +## Drawbacks +[drawbacks]: #drawbacks + + + +## Alternatives +[alternatives]: #alternatives + + + +## Unresolved Questions +[unresolved]: #unresolved-questions + + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 2fa2a30b..ca285c9a 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,52 +1,20 @@ - -### Description of Change ### +## Fixes + - +## Description -### Bugs Fixed ### - + -- Fixes # +## Detailed Solution -### API Changes ### - - - -### Behavioral Changes ### - - - -### PR Checklist ### - -- [ ] Has a linked Issue, and the Issue has been `approved` -- [ ] Has tests (if omitted, state reason in description) -- [ ] Has samples (if omitted, state reason in description) -- [ ] Rebased on top of main at time of PR -- [ ] Changes adhere to coding standard - -- [ ] Updated Documentation + \ No newline at end of file diff --git a/README.md b/README.md index a68c6088..6f95ca74 100644 --- a/README.md +++ b/README.md @@ -2,13 +2,55 @@ [.NET Foundation](https://dotnetfoundation.org) -.NET MAUI Markup Community Toolkit -=========== -Members of the community are rebooting this library under the guidance of the .NET MAUI team. The .NET MAUI Community Toolkit is a collection of common elements for development with .NET MAUI that people tend to replicate across multiple apps. It simplifies and demonstrates common developer tasks when building apps with .NET MAUI. +# .NET MAUI Markup Community Toolkit + +The .NET MAUI Markup Community Toolkit is a collection of Fluent C# Extension Methods that allows developers to continue architecting their apps using MVVM, Bindings, Resource Dictionaries, etc., without the need for XAML + +All features are contributed by you, our amazing .NET community, and maintained by a core set of maintainers. + +And – the best part – the features you add to the .NET MAUI Toolkit may one day be included into the official .NET MAUI library! We leverage the Community Toolkits to debut new features and work closely with the .NET MAUI engineering team to nominate features for promotion. + +## Submitting A New Feature + +New features will follow the following steps: + +### 1. Discussion Started + +Debate pertaining to new Maui Toolkit features takes place in the form of [Discussions](https://github.com/communitytoolkit/maui.markup/discussions) in this repo. + +If you want to suggest a feature, discuss current design notes or proposals, etc., please [open a new Discussion topic](https://github.com/communitytoolkit/maui.markup/discussions/new). + +Discussions that are short and stay on topic are much more likely to be read. If you leave comment number fifty, chances are that only a few people will read it. To make discussions easier to navigate and benefit from, please observe a few rules of thumb: + +- Discussion should be relevant to the .NET MAUI Toolkit. If they are not, they will be summarily closed. +- Choose a descriptive topic that clearly communicates the scope of discussion. +- Stick to the topic of the discussion. If a comment is tangential, or goes into detail on a subtopic, start a new discussion and link back. +- Is your comment useful for others to read, or can it be adequately expressed with an emoji reaction to an existing comment? + +### 2. Proposal Submitted +Once you have a fully fleshed out proposal describing a new feature in syntactic and semantic detail, please [open an issue for it](https://github.com/communitytoolkit/maui.markup/issues/new/choose), and it will be labeled as a [Proposal](https://github.com/communitytoolkit/maui.markup/issues?q=is%3Aopen+is%3Aissue+label%3Aproposal). The comment thread on the issue can be used to hash out or briefly discuss details of the proposal, as well as pros and cons of adopting it into the .NET MAUI Toolkit. If an issue does not meet the bar of being a full proposal, we may move it to a discussion, so that it can be further matured. Specific open issues or more expansive discussion with a proposal will often warrant opening a side discussion rather than cluttering the comment section on the issue. + +### 3. Proposal Championed +When a member of the .NET MAUI Toolkit core team finds that a proposal merits promotion into the Toolkit, they can [Champion](https://github.com/communitytoolkit/maui.markup/issues?q=is%3Aopen+is%3Aissue+label%3A%22proposal+champion%22) it, which means that they will bring it to the monthly [.NET MAUI Toolkit Community Standup](https://www.youtube.com/watch?v=0ZBh2Hl54ZY). + +### 4. Proposal Approved +The .NET MAUI Toolkit core team will collectively vote to work on adopting and/or modifying the proposal, requiring a majority approval (i.e. greater than 50%) to be added to the Toolkit. + +Once a Proposal has been championed and has received a majority approval from the .NET MAUI Toolkit core team, a Pull Request can be opened. + +### 5. Pull Request Approved +After a Pull Request has been submitted, it will be reviewed and approved by the Proposal Champion. + +Every new feature also requires an associated sample to be added to the .NET MAUI Toolkit Sample app. + +### 6. Documentation Complete +Before a Pull Request can be merged into the .NET MAUI Toolkit, the Pull Request Author must also submit the documentation to [Add link to Microsoft Docs GitHub Repo Here]. + +### 7. Merged +Once a Pull Request has been reviewed + approved AND the documentation has been written, submitted and approved, the new feature will be merged adding it to the .NET MAUI Toolkit ## Code of Conduct As a part of the .NET Foundation, we have adopted the [.NET Foundation Code of Conduct](https://dotnetfoundation.org/code-of-conduct). Please familiarize yourself with that before participating with this repository. Thanks! ## .NET Foundation -This project is supported by the [.NET Foundation](https://dotnetfoundation.org). - +This project is supported by the [.NET Foundation](https://dotnetfoundation.org). \ No newline at end of file