dotnet-foundation / dotnet-foundation/projects

Issue: New .NET Foundation Project Application for PromptPlus

Open
#306 2 comments 0 reactions 2 assignees View on GitHub

@sbwalker is already working on this.

Since Aug 1, 2023.

project application project support
Dominant language
No language data
Stars
157
Forks
37
PR merge metrics
No merged PRs in 30d

Description

Project Name

PromptPlus

License

MIT

Contributor

Fernando Cerqueira

Existing OSS Project?

Yes

Source Code URL

https://github.com/FRACerqueira/PromptPlus

Project Homepage URL

https://fracerqueira.github.io/PromptPlus/

Project Transfer Signatories
  • Fernando Cerqueira - frcerqueira@live.com
Description

Interactive command-line toolkit for .Net core with powerful controls and commands to create professional console applications.

Name

Fernando Cerqueira

Email

frcerqueira@live.com

GitHub Profile URL

https://github.com/FRACerqueira

Committers

FRACerqueira

Governance Model

An issue is created describing the proposed code change.
After a review/design process, the maintainers of the project accept the proposed change.
Change is implemented and submitted as a pull request.
Pull request is reviewed and ultimately approved when it aligns with the agreed-upon design and coding/architecture standards of the project.
So far the project has only received sporadic pull requests.

New committers would ideally have made substantial contributions via pull requests which would demonstrate their understanding of the internals of the project, after which they could request contributor status via email.

CLA
  • If already an OSS project, was a Contribution License Agreement in place for contributions accepted?
How does the project check who has signed one?

prompt the user to accept the license when installing the package

CLA Notification Alias

frcerqueira@live.com

Repository Layout

Accept any changes the process of joining the .NET Foundation

Eligibility Criteria
  • The project is built on the .NET platform and/or creates value within the .NET ecosystem.
  • The project produces source code for distribution to the public at no charge.
  • The project's code is easily discoverable and publicly accessible (preferably on GitHub).
  • The project contains a build script that can produce deployable artifacts that are identical to the official deployable artifacts, with the exception of code signing (Exception may be granted for strong name keys, though strongly encouraged to be committed. Exception relies on OSS signing being in the build script for public builds).
  • When applicable, project must use reproducible build settings in its toolchain.
  • The project uses Source Link.
  • The project uses either embedded PDBs or publish symbol packages to NuGet (if applicable).
  • The project code signs their artifacts as appropriate.
  • The project organization has 2FA enabled. Requiring 2FA must be done as part of onboarding if not already enabled.
  • Libraries that are mandatory dependencies of the project are offered under a standard, permissive open source license which has been approved by the .NET Foundation (exceptions include a dependency that is required by the target platform where no alternative open source dependency is available such as the .NET Framework or a hardware specific library).
  • Committers are bound by a Contributor License Agreement (CLA) and/or are willing to embrace the .NET Foundation's CLA when the project becomes a Member.
  • The copyright ownership of everything that the project produces is clearly defined and documented.
  • The project has a public issue tracker where the status of any defect can be easily obtained.
  • The project has a published Security Policy.
  • The project has a home page which provides high level information about its status and purpose.
  • The project has a public communication channel where community members can engage with maintainers.
  • The project has a publicly available location where members can review and contribute to documentation.
PR Plan Summary

No particular PR plan aside from an occasional tweet/article/linkedIn.

Infrastructure Requirements Summary

Vs2022 professional and .net7

Additional Notes

this project is similar to spectre.console and takes advantage of the color engine. This project differs as there are more than 20 controls with many features like: filters, validators, history, suggestions, spinner(19 embeding type and plus custom yours!), colors and styles for control-elements :

  • ascii banner
  • Input text / Secret / AutoComplete with spinner
  • MaskEdit Generic / Only Date / Only Time / DateTime / Number / Currency
  • Calendar with multiple layouts
  • Select and Multi-Select(with group select!)
  • AddTo(Add/Remove) items for text and masked text
  • Wait Keypress with animate spinner
  • Numeric ranger slider with gradient colors
  • Up-Down Numeric Ranger
  • Switch (style on/off)
  • Wait Process (Run background tasks Sequential/Parallel) with elapsed time and spinner
  • Wait Time with countdown and spinner
  • ChartBar with enabled Interaction to switch Type , Legend and order when browsing the charts / Legends.
  • Progress bar with 8 types, gradient colors and spinner
  • Browser File and Folder with multi-select, colors and spinner
  • Treeview hierarchical structures with multi-select and colors

All controls have the same organization:

  • input/filter (except Masked input) using GNU Readline Emacs keyboard shortcuts.
  • Prompt, description and data entry (ever)
  • Extra actions per stage : OnStartControl/OnInputRender/OnTryAcceptInput/OnFinishControl (ever)
  • Tooltips (ever and configurable)
  • Filter by Contains / StartsWith (configurable) (depends on the control)
  • Collection subset items and interations (depends on the control)
  • Page information and page-size(depends on the control)
  • Spinner animmation (depends on the control)
  • Error message (depends on the control and validators)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.