{"repo":"EluciusFTW/SpectreCoff","free":true,"listed":false,"github":"https://github.com/EluciusFTW/SpectreCoff","clone":"git clone https://github.com/EluciusFTW/SpectreCoff.git","description":"A thin, opinionated wrapper around Spectre.Console in F#.","language":"F#","stars":91,"topics":["cli","console-application","fsharp","fsharp-console","wrapper-api"],"license":"MIT","category":"cli-tools","readme_excerpt":"SpectreCoff Spectre Console for F# - A thin, opinionated wrapper around Spectre.Console featuring Dumpify. Available at Nuget: EluciusFTW.SpectreCoff. See the Changelog for recent (breaking) changes. Table of Contents - Goals and Philosophy - SpectreCoff Package Output Payloads Markup Convenience Styles Versioning - SpectreCoff Cli Run Examples Discover Themes - Related Work - License - Feedback and Contributing Goals and Philosophy Before we get into the details, we'd like to outline our goals and our guiding principles for designing the SpectreCoff api surface. 1. Make Spectre.Console available for console applications in F# in an idiomatic way. We expose separate functionality in different modules, as functions, with typed arguments instead of generics resp. object-typing. Since many of Spectre's functions can handle multiple different kinds of content that often means wrapping your content in discriminated union type. We believe that the expression of intent as well as the resulting robustness and clarity far outweigh the 'overhead' of wrapping. 1. Provide a simple and consistent api surface. In SpectreCoff, we follow the structure Spectre.Console provides very closely. - Features of Spectre are translated into modules of the same name. - Whenever possible, each module exposes a function producing ' the module thing ' that is of same name as the module. This will be in form of an OutputPayload . - The special module Output (which also defines the type OutputPayload ), pro","default_branch":null,"files":null,"tree":[],"storefront":"/r/EluciusFTW","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/EluciusFTW/SpectreCoff/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}