finds.dev← search

// the find

sorrycc/roadhog

★ 2,682 · JavaScript · updated Feb 2026

🐷 Cli tool for creating react apps, configurable version of create-react-app.

Roadhog is a zero-config CLI for React apps (dev/build/test) built on top of react-dev-utils, essentially a configurable create-react-app with JSON/JS-based webpack config instead of ejecting. It's aimed at teams who wanted CRA's convenience but needed to tweak webpack internals without forking the whole toolchain.

The escape hatch design is the whole point and it's done well — .webpackrc(.js) lets you touch externals, aliases, babel presets/plugins, and CommonsChunkPlugin without ejecting, which CRA itself refused to offer at the time. Built-in request mocking via .roadhogrc.mock.js with an Express-compatible API is genuinely useful for frontend work against unfinished backends. CSS Modules and HMR work out of the box with no extra setup.

This is a webpack 1/2-era, Babel 6-era tool (CommonsChunkPlugin, extraBabelPresets as an array of strings) with a dependency chain that's long dead — react-dev-utils, af-webpack, node-sass. There's no TypeScript story beyond passthrough env vars for TSLint, no webpack 4/5 upgrade path visible, and the whole project reads as superseded by its own successor (umi, from the same author). Adopting this today means inheriting an unmaintained webpack config abstraction rather than learning webpack directly, which is a liability the moment you need something the config surface doesn't expose.

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 →