A flexible code generator and task runner
Pinion is a flexible task runner and code generator for any language. Using TypeScript, it gives you full flexibility over what you can do with type-safe tasks and templates out of the box.
Feathers Pinion Explained

API

Pinion has a small API with only a few tasks necessary to build powerful generators and CLI tools. This page has an overview of all available tasks, helpers and types.

Composability

This chapter shows how to test generators, use them programmatically in CLI tools and existing applications and how to write your own reusable tasks.

Generators

A Pinion generator is any file that has a generate export which takes a context and returns a Promise with that context. In its most basic form a Pinion generator looks like this:

Quick Start

Pinion is a flexible task runner and code generator for any language. Using TypeScript, it gives you full flexibility over what you can do with type-safe tasks and templates out of the box.

Templates and Files

Pinion is unique. Templates are written in plain TypeScript, so they're super easy to use! This page covers how to create templates, how to write them to files and how to inject templates into existing files.

Why Pinion?

We have maintained CLI tooling for large internal projects and well-used open-source projects for many years. During that time, we tried all of the generators, looking for a flexible option to handle both internal projects and npm-published CLIs.
Discord

Join our community

Get help and support
from the Feathers community
Subscribe to our NewsletterGet new Feathers content as it becomes available.