vuejs/vue

replace lodash with es-toolkit in vue-server-renderer for modern utility and safer maintenance

Closed this issue · 1 comments

What problem does this feature solve?

vue-server-renderer currently uses a couple of lodash modules, specifically:

lodash.template
lodash.uniq

lodash is in maintenance mode, and submodules like lodash.template are rarely updated.
Pulling in lodash.template also pulls several deep lodash internals as transitive dependencies (e.g., lodash._reinterpolate, lodash._basevalues).

es-toolkit is a modern, ESM-friendly utility library offering equivalents like template() and unique().
It is actively maintained, small in scope, and avoids deep dependency chains.

What does the proposed API look like?

The actual runtime API for users does not change — this is an internal refactor.

const compiled = require('lodash.template')(templateString);
const uniqueList = require('lodash.uniq')(someArray);

After:

import { template, unique } from 'es-toolkit';

const compiled = template(templateString);
const uniqueList = unique(someArray);

No API change or behavior difference is expected. If needed, I’m happy to write compatibility tests to verify parity.

Vue 2 is no longer being actively maintained