finds.dev← search

// the find

lukeed/taskr

★ 2,540 · JavaScript · MIT · updated Dec 2020

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.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →