Skip to content

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

@Junnis0123

Description

@Junnis0123

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions