Pliant
Textrude
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Pliant
-
Best way to include another project?
Here is a GitHub workflow you can use as an example. It uses git tags as version numbers. https://github.com/patrickhuber/Pliant/blob/main/.github/workflows/pipeline.yml
Textrude
-
Is there a source generator that generates poco classes from a JSON schema?
Fair point - source generators can run arbitrary code so yes, they can read a json file and then spit out something else in response. If you want to translate the json schema into the equivalent C# you'll need to write a small amount of code to deserialize the json into a JObject tree, walk it, and emit c# code. I do something similar in my Textrude code-generation/templating project except I'm translating the tree into an equivalent Scriban object tree. The relevant source code is here. All that said, this is a fairly specialised and common task - I can't believe there's not a command line tool to do this already.
-
List of JSON tools for command line
Plug for something I wrote: [github link]*https://github.com/NeilMacMullen/Textrude). The CLI version can pipe json (or yaml,csv or text lines) from stdin or fetch it from a URL then turn it into model and apply a Scriban template to it to emit text to stdout. Runs on Linux or Windows and also comes with an interactive UI prototyping tool.
- Textrude - a template-based code/text-generation tool. Easy transformation of JSON/YAML/CSV models into code/text using Scriban templates.
- General-purpose code-generation tool, with support for data sources like yaml/csv/etc and a template language
What are some alternatives?
Quickenshtein - Making the quickest and most memory efficient implementation of Levenshtein Distance with SIMD and Threading support
NTypewriter - File/code generator using Scriban text templates populated with C# code metadata from Roslyn API.
pxi - 🧚 pxi (pixie) is a small, fast, and magical command-line data processor similar to jq, mlr, and awk.
yamlpath - YAML/JSON/EYAML/Compatible get/set/merge/validate/scan/convert/diff processors using powerful, intuitive, command-line friendly syntax.
fx - Terminal JSON viewer & processor
jj - JSON Stream Editor (command line utility)
dasel - Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package.
jiq - jid on jq - interactive JSON query tool using jq expressions
nvim-jqx - Populate the quickfix with json entries
jid - json incremental digger
up - Ultimate Plumber is a tool for writing Linux pipes with instant live preview
jj - A Git-compatible VCS that is both simple and powerful