nvim-lua/plenary.nvim

plenary: full; complete; entire; absolute; unqualified. All the lua functions I don't want to write twice.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 56 minutes ago
Added to GitGenius on September 19th, 2026
Created on April 11th, 2020
Open Issues & Pull Requests: 158 (+0)
GitHub issues: Enabled
Number of forks: 340
Total Stargazers: 3,496 (+0)
Total Subscribers: 22 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 25
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 602 days
Stale 30+ days: 24
Stale 90+ days: 24

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

plenary.nvim is a Lua utility library for Neovim that provides reusable functions to avoid duplicating common code across plugins.

The library solves the problem of repetitive utility code in Neovim plugin development by offering a collection of Lua modules built on Neovim's native functions and libuv. Its core modules include async programming support via coroutines, job control for system processes, filesystem operations modeled after Python's pathlib, fast recursive directory scanning, and string manipulation utilities. The async module abstracts away callback complexity by using coroutines to enable straightforward asynchronous I/O and cooperative concurrency.

Developers building Neovim plugins should adopt this library if they need async operations, process management, or filesystem utilities without writing these abstractions themselves. It is usable with any recent version of Neovim but has no value outside that editor. The library is particularly suited for plugins that perform file operations or system calls, as demonstrated by its use in several established plugins like telescope.nvim and neo-tree.nvim.

The project is no longer actively maintained and will be archived, with critical bug fixes addressed only until mid-2026 and no new features planned. Development activity has ceased beyond maintenance of existing functionality.