// the find
lukeed/taskr
A fast, concurrency-focused task automation tool.
Taskr is a Gulp-like task runner built around generator functions and Bluebird coroutines, letting you write async build pipelines without the stream-only constraint. It's a monorepo with ~25 official plugins covering the usual frontend build suspects — Babel, Sass, PostCSS, TypeScript, etc. Aimed at frontend developers who wanted Gulp's composability without its boilerplate, circa 2017.
The coroutine model is cleaner than Gulp 3's stream chaining — parallel/serial composition is explicit and readable without callback hell. Plugin surface area is tiny by design: each plugin is just a function that gets attached to the task prototype, which makes writing your own trivially simple. The monorepo is well-structured with per-package tests and fixtures, so the test coverage is actually meaningful. Six runtime dependencies is genuinely minimal for a task runner.
Dead project — last commit December 2020, and the ecosystem it was built for (Babel 6, Browserify, Bublé, CoffeeScript) is itself mostly dead. The generator function syntax it centers on was a transitional pattern that async/await made obsolete; the @taskr/esnext shim to use async/await in your taskfile is a red flag that the core abstraction aged poorly. No Rollup or Webpack plugin in the official packages, which means anyone doing a modern JS build would immediately hit the ceiling. With Vite and esbuild handling what Gulp used to do, there's no realistic migration path to keep using this.